Function taggedUnion [src]
Prototype
pub fn taggedUnion(tree: Ast, node: Node.Index) full.ContainerDecl
Parameters
tree: Ast
node: Node.Index
Source
pub fn taggedUnion(tree: Ast, node: Node.Index) full.ContainerDecl {
assert(tree.nodeTag(node) == .tagged_union or
tree.nodeTag(node) == .tagged_union_trailing);
const members = tree.extraDataSlice(tree.nodeData(node).extra_range, Node.Index);
const main_token = tree.nodeMainToken(node);
return tree.fullContainerDeclComponents(.{
.main_token = main_token,
.enum_token = main_token + 2, // union lparen enum
.members = members,
.arg = .none,
});
}