pub const OptionalIndex = enum(u32) pub fn init(i: Index) OptionalIndexpub fn unwrap(this: @This()) ?Index1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638 pub const OptionalIndex = enum(u32) {
none = max_u32 - 1,
root = max_u32,
_,
pub fn init(i: Index) OptionalIndex {
const result: OptionalIndex = @fromBackingInt(@intCast(@backingInt(i)));
assert(result != .none);
return result;
}
pub fn unwrap(this: @This()) ?Index {
return switch (this) {
.none => null,
.root => .root,
_ => @fromBackingInt(@intCast(@backingInt(this))),
};
}
}