pub const ProgramHeaderIterator = struct
pub const ProgramHeaderIterator = struct { is_64: bool, endian: Endian, phnum: u16, phoff: u64, file_reader: *Io.File.Reader, index: usize = 0, pub fn next(it: *ProgramHeaderIterator) !?Elf64_Phdr { if (it.index >= it.phnum) return null; defer it.index += 1; const size: u64 = if (it.is_64) @sizeOf(Elf64_Phdr) else @sizeOf(Elf32_Phdr); const offset = it.phoff + size * it.index; try it.file_reader.seekTo(offset); return try takeProgramHeader(&it.file_reader.interface, it.is_64, it.endian); } }