Index into tokens, or null.
pub const OptionalTokenIndex = enum(u32)
pub const OptionalTokenIndex = enum(u32) {
none = std.math.maxInt(u32),
_,
pub fn unwrap(oti: OptionalTokenIndex) ?TokenIndex {
return if (oti == .none) null else @backingInt(oti);
}
pub fn fromToken(ti: TokenIndex) OptionalTokenIndex {
return @fromBackingInt(@intCast(ti));
}
pub fn fromOptional(oti: ?TokenIndex) OptionalTokenIndex {
return if (oti) |ti| @fromBackingInt(@intCast(ti)) else .none;
}
}