Zig 0.17.0-dev (Split by item)

This is an example of documentation generated by ZigDoc, an alternative to Zig's built-in Auto Doc feature. See also examples in other modes/formats. The project being documented here (as the example) is the Zig library itself.

DynamicSectionBufferIterator

elf.DynamicSectionBufferIterator
pub const DynamicSectionBufferIterator = struct

File

lib/std/elf.zig:984

Code

pub const DynamicSectionBufferIterator = struct {
    is_64: bool,
    endian: Endian,
    offset: u64,
    end_offset: u64,

    buf: []const u8,

    pub fn next(it: *DynamicSectionBufferIterator) !?Elf64_Dyn {
        if (it.offset >= it.end_offset) return null;
        const size: u64 = if (it.is_64) @sizeOf(Elf64_Dyn) else @sizeOf(Elf32_Dyn);
        defer it.offset += size;
        var reader: std.Io.Reader = .fixed(it.buf[it.offset..]);
        return try takeDynamicSection(&reader, it.is_64, it.endian);
    }
}