fn parsePrefixExpr(p: *Parse) Error!?Node.Index
fn parsePrefixExpr(p: *Parse) Error!?Node.Index { const tag: Node.Tag = switch (p.tokenTag(p.tok_i)) { .bang => .bool_not, .minus => .negation, .tilde => .bit_not, .minus_percent => .negation_wrap, .ampersand => .address_of, .keyword_try => .@"try", else => return p.parsePrimaryExpr(), }; return try p.addNode(.{ .tag = tag, .main_token = p.nextToken(), .data = .{ .node = try p.expectPrefixExpr() }, }); }