diff --git a/src/all_types.hpp b/src/all_types.hpp index 3cdaf36cd9..79ade39ef7 100644 --- a/src/all_types.hpp +++ b/src/all_types.hpp @@ -712,7 +712,7 @@ struct AstNodeArrayType { bool is_volatile; }; -struct AstNodeUse { +struct AstNodeUsingNamespace { VisibMod visib_mod; AstNode *expr; @@ -977,7 +977,7 @@ struct AstNode { AstNodeFnCallExpr fn_call_expr; AstNodeArrayAccessExpr array_access_expr; AstNodeSliceExpr slice_expr; - AstNodeUse use; + AstNodeUsingNamespace using_namespace; AstNodeIfBoolExpr if_bool_expr; AstNodeTryExpr if_err_expr; AstNodeTestExpr test_expr; diff --git a/src/analyze.cpp b/src/analyze.cpp index 3ec839464e..797451c8f8 100644 --- a/src/analyze.cpp +++ b/src/analyze.cpp @@ -3306,10 +3306,10 @@ void resolve_top_level_decl(CodeGen *g, Tld *tld, AstNode *source_node) { } Tld *find_container_decl(CodeGen *g, ScopeDecls *decls_scope, Buf *name) { - // resolve all the use decls + // resolve all the using_namespace decls for (size_t i = 0; i < decls_scope->use_decls.length; i += 1) { AstNode *use_decl_node = decls_scope->use_decls.at(i); - if (use_decl_node->data.use.resolution == TldResolutionUnresolved) { + if (use_decl_node->data.using_namespace.resolution == TldResolutionUnresolved) { preview_use_decl(g, use_decl_node, decls_scope); resolve_use_decl(g, use_decl_node, decls_scope); } @@ -3753,17 +3753,17 @@ static void analyze_fn_body(CodeGen *g, ZigFn *fn_table_entry) { } static void add_symbols_from_container(CodeGen *g, AstNode *src_use_node, AstNode *dst_use_node, ScopeDecls* decls_scope) { - if (src_use_node->data.use.resolution == TldResolutionUnresolved) { + if (src_use_node->data.using_namespace.resolution == TldResolutionUnresolved) { preview_use_decl(g, src_use_node, decls_scope); } - ConstExprValue *use_expr = src_use_node->data.use.using_namespace_value; + ConstExprValue *use_expr = src_use_node->data.using_namespace.using_namespace_value; if (type_is_invalid(use_expr->type)) { decls_scope->any_imports_failed = true; return; } - dst_use_node->data.use.resolution = TldResolutionOk; + dst_use_node->data.using_namespace.resolution = TldResolutionOk; assert(use_expr->special != ConstValSpecialRuntime); @@ -3821,7 +3821,7 @@ static void add_symbols_from_container(CodeGen *g, AstNode *src_use_node, AstNod for (size_t i = 0; i < src_scope->use_decls.length; i += 1) { AstNode *use_decl_node = src_scope->use_decls.at(i); - if (use_decl_node->data.use.visib_mod != VisibModPrivate) + if (use_decl_node->data.using_namespace.visib_mod != VisibModPrivate) add_symbols_from_container(g, use_decl_node, dst_use_node, decls_scope); } } @@ -3829,8 +3829,8 @@ static void add_symbols_from_container(CodeGen *g, AstNode *src_use_node, AstNod void resolve_use_decl(CodeGen *g, AstNode *node, ScopeDecls *decls_scope) { assert(node->type == NodeTypeUse); - if (node->data.use.resolution == TldResolutionOk || - node->data.use.resolution == TldResolutionInvalid) + if (node->data.using_namespace.resolution == TldResolutionOk || + node->data.using_namespace.resolution == TldResolutionInvalid) { return; } @@ -3840,20 +3840,20 @@ void resolve_use_decl(CodeGen *g, AstNode *node, ScopeDecls *decls_scope) { void preview_use_decl(CodeGen *g, AstNode *node, ScopeDecls *decls_scope) { assert(node->type == NodeTypeUse); - if (node->data.use.resolution == TldResolutionOk || - node->data.use.resolution == TldResolutionInvalid) + if (node->data.using_namespace.resolution == TldResolutionOk || + node->data.using_namespace.resolution == TldResolutionInvalid) { return; } - node->data.use.resolution = TldResolutionResolving; + node->data.using_namespace.resolution = TldResolutionResolving; ConstExprValue *result = analyze_const_value(g, &decls_scope->base, - node->data.use.expr, g->builtin_types.entry_type, nullptr); + node->data.using_namespace.expr, g->builtin_types.entry_type, nullptr); if (type_is_invalid(result->type)) decls_scope->any_imports_failed = true; - node->data.use.using_namespace_value = result; + node->data.using_namespace.using_namespace_value = result; } ZigType *add_source_file(CodeGen *g, ZigPackage *package, Buf *resolved_path, Buf *source_code, @@ -3980,9 +3980,9 @@ void semantic_analyze(CodeGen *g) { { for (; g->use_queue_index < g->use_queue.length; g->use_queue_index += 1) { AstNode *use_decl_node = g->use_queue.at(g->use_queue_index); - // Get the top-level scope where `use` is used + // Get the top-level scope where `using_namespace` is used ScopeDecls *decls_scope = get_container_scope(use_decl_node->owner); - if (use_decl_node->data.use.resolution == TldResolutionUnresolved) { + if (use_decl_node->data.using_namespace.resolution == TldResolutionUnresolved) { preview_use_decl(g, use_decl_node, decls_scope); resolve_use_decl(g, use_decl_node, decls_scope); } diff --git a/src/parser.cpp b/src/parser.cpp index 25541d5351..0783d4ec10 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -671,14 +671,14 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod) { return res; } - Token *use = eat_token_if(pc, TokenIdKeywordUsingNamespace); - if (use != nullptr) { + Token *usingnamespace = eat_token_if(pc, TokenIdKeywordUsingNamespace); + if (usingnamespace != nullptr) { AstNode *expr = ast_expect(pc, ast_parse_expr); expect_token(pc, TokenIdSemicolon); - AstNode *res = ast_create_node(pc, NodeTypeUse, use); - res->data.use.visib_mod = visib_mod; - res->data.use.expr = expr; + AstNode *res = ast_create_node(pc, NodeTypeUse, usingnamespace); + res->data.using_namespace.visib_mod = visib_mod; + res->data.using_namespace.expr = expr; return res; } @@ -2939,7 +2939,7 @@ void ast_visit_node_children(AstNode *node, void (*visit)(AstNode **, void *cont visit_field(&node->data.unwrap_optional.expr, visit, context); break; case NodeTypeUse: - visit_field(&node->data.use.expr, visit, context); + visit_field(&node->data.using_namespace.expr, visit, context); break; case NodeTypeBoolLiteral: // none