pub const Iterator = struct index: usize = 0err: Errordiag: *const Diagnostics44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65 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 };
},
}
}
}