diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2021-03-31 15:06:03 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2021-03-31 15:06:03 -0700 |
| commit | e272c29c163538159eb81f60cb5da3d7ebe099f9 (patch) | |
| tree | 443eb48eb399e2f16ba76743d55207cbe78e8a9f /src/RangeSet.zig | |
| parent | c7b09be8de946d18c2f1afb532beb1b2426fab18 (diff) | |
| download | zig-e272c29c163538159eb81f60cb5da3d7ebe099f9.tar.gz zig-e272c29c163538159eb81f60cb5da3d7ebe099f9.zip | |
Sema: implement switch validation for ranges
Diffstat (limited to 'src/RangeSet.zig')
| -rw-r--r-- | src/RangeSet.zig | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/RangeSet.zig b/src/RangeSet.zig index f8116a4375..4ae85d0f0b 100644 --- a/src/RangeSet.zig +++ b/src/RangeSet.zig @@ -2,13 +2,14 @@ const std = @import("std"); const Order = std.math.Order; const Value = @import("value.zig").Value; const RangeSet = @This(); +const SwitchProngSrc = @import("AstGen.zig").SwitchProngSrc; ranges: std.ArrayList(Range), pub const Range = struct { start: Value, end: Value, - src: usize, + src: SwitchProngSrc, }; pub fn init(allocator: *std.mem.Allocator) RangeSet { @@ -21,7 +22,7 @@ pub fn deinit(self: *RangeSet) void { self.ranges.deinit(); } -pub fn add(self: *RangeSet, start: Value, end: Value, src: usize) !?usize { +pub fn add(self: *RangeSet, start: Value, end: Value, src: SwitchProngSrc) !?SwitchProngSrc { for (self.ranges.items) |range| { if ((start.compare(.gte, range.start) and start.compare(.lte, range.end)) or (end.compare(.gte, range.start) and end.compare(.lte, range.end))) |
