struct Iterator [src]

Fields

index: usize = 0
err: Error
diag: *const Diagnostics

Members

Source

pub const Iterator = struct { index: usize = 0, err: Error, diag: *const Diagnostics, pub fn next(self: *@This()) ?Note { switch (self.err) { .zoir => |err| { if (self.index >= err.note_count) return null; const note = err.getNotes(self.diag.zoir)[self.index]; self.index += 1; return .{ .zoir = note }; }, .type_check => |err| { if (self.index >= err.getNoteCount()) return null; const note = err.getNote(self.index); self.index += 1; return .{ .type_check = note }; }, } } }