const Members = struct len: usizedata: Node.DataMust be either .opt_node_and_opt_node if len <= 2 or .extra_range otherwise.
trailing: bool53
54
55
56
57
58
59
60
61
62
63
64
65
66
67const Members = struct {
len: usize,
/// Must be either `.opt_node_and_opt_node` if `len <= 2` or `.extra_range` otherwise.
data: Node.Data,
trailing: bool,
fn toSpan(self: Members, p: *Parse) !Node.SubRange {
return switch (self.len) {
0 => p.listToSpan(&.{}),
1 => p.listToSpan(&.{self.data.opt_node_and_opt_node[0].unwrap().?}),
2 => p.listToSpan(&.{ self.data.opt_node_and_opt_node[0].unwrap().?, self.data.opt_node_and_opt_node[1].unwrap().? }),
else => self.data.extra_range,
};
}
}