struct SectionHeaderIterator [src]

Fields

elf_header: Header
file_reader: *std.fs.File.Reader
index: usize = 0

Members

Source

pub const SectionHeaderIterator = struct { elf_header: Header, file_reader: *std.fs.File.Reader, index: usize = 0, pub fn next(it: *SectionHeaderIterator) !?Elf64_Shdr { if (it.index >= it.elf_header.shnum) return null; defer it.index += 1; const size: u64 = if (it.elf_header.is_64) @sizeOf(Elf64_Shdr) else @sizeOf(Elf32_Shdr); const offset = it.elf_header.shoff + size * it.index; try it.file_reader.seekTo(offset); return takeShdr(&it.file_reader.interface, it.elf_header); } }