1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

all: implement struct field optional and disallow storing result (#16392)

This commit is contained in:
shove
2022-11-17 13:51:50 +08:00
committed by GitHub
parent 41dd8985fc
commit 37700502f5
23 changed files with 374 additions and 69 deletions

View File

@@ -612,6 +612,7 @@ fn (t Tree) struct_field(node ast.StructField) &Node {
obj.add_terse('name', t.string_node(node.name))
obj.add_terse('typ', t.type_node(node.typ))
obj.add('type_pos', t.pos(node.type_pos))
obj.add('optional_pos', t.pos(node.optional_pos))
obj.add_terse('has_default_expr', t.bool_node(node.has_default_expr))
obj.add_terse('default_expr_typ', t.type_node(node.default_expr_typ))
obj.add_terse('default_expr', t.expr(node.default_expr))
@@ -1373,6 +1374,7 @@ fn (t Tree) selector_expr(node ast.SelectorExpr) &Node {
obj.add_terse('field_name', t.string_node(node.field_name))
obj.add_terse('typ', t.type_node(node.typ))
obj.add_terse('name_type', t.type_node(node.name_type))
obj.add_terse('or_block', t.or_expr(node.or_block))
obj.add_terse('gkind_field', t.enum_node(node.gkind_field))
obj.add_terse('from_embed_types', t.array_node_type(node.from_embed_types))
obj.add_terse('next_token', t.token_node(node.next_token))