struct DeclIterator [src]
Fields
extra_index: u32
decls_remaining: u32
zir: Zir
Members
- next (Function)
Source
pub const DeclIterator = struct {
extra_index: u32,
decls_remaining: u32,
zir: Zir,
pub fn next(it: *DeclIterator) ?Inst.Index {
if (it.decls_remaining == 0) return null;
const decl_inst: Zir.Inst.Index = @enumFromInt(it.zir.extra[it.extra_index]);
it.extra_index += 1;
it.decls_remaining -= 1;
assert(it.zir.instructions.items(.tag)[@intFromEnum(decl_inst)] == .declaration);
return decl_inst;
}
}