authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-07-16 16:20:54-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-07-16 16:20:54-04:00
logb1f8b53d208723663f14b54d7f4863a54f999553
tree8af0edb13381603a0a4e5ebb6656908656e9f14f
parent158e2312ea5f680b7c8598ef578aefb6cbdd3372
signaturelock-open Commit is signed but in an unrecognized format.

rename internal names regarding `usingnamespace`


3 files changed, 23 insertions(+), 23 deletions(-)

src/all_types.hpp+2-2
......@@ -712,7 +712,7 @@ struct AstNodeArrayType {
712712 bool is_volatile;
713713};
714714
715struct AstNodeUse {
715struct AstNodeUsingNamespace {
716716 VisibMod visib_mod;
717717 AstNode *expr;
718718
......@@ -977,7 +977,7 @@ struct AstNode {
977977 AstNodeFnCallExpr fn_call_expr;
978978 AstNodeArrayAccessExpr array_access_expr;
979979 AstNodeSliceExpr slice_expr;
980 AstNodeUse use;
980 AstNodeUsingNamespace using_namespace;
981981 AstNodeIfBoolExpr if_bool_expr;
982982 AstNodeTryExpr if_err_expr;
983983 AstNodeTestExpr test_expr;
src/analyze.cpp+15-15
......@@ -3306,10 +3306,10 @@ void resolve_top_level_decl(CodeGen *g, Tld *tld, AstNode *source_node) {
33063306}
33073307
33083308Tld *find_container_decl(CodeGen *g, ScopeDecls *decls_scope, Buf *name) {
3309 // resolve all the use decls
3309 // resolve all the using_namespace decls
33103310 for (size_t i = 0; i < decls_scope->use_decls.length; i += 1) {
33113311 AstNode *use_decl_node = decls_scope->use_decls.at(i);
3312 if (use_decl_node->data.use.resolution == TldResolutionUnresolved) {
3312 if (use_decl_node->data.using_namespace.resolution == TldResolutionUnresolved) {
33133313 preview_use_decl(g, use_decl_node, decls_scope);
33143314 resolve_use_decl(g, use_decl_node, decls_scope);
33153315 }
......@@ -3753,17 +3753,17 @@ static void analyze_fn_body(CodeGen *g, ZigFn *fn_table_entry) {
37533753}
37543754
37553755static void add_symbols_from_container(CodeGen *g, AstNode *src_use_node, AstNode *dst_use_node, ScopeDecls* decls_scope) {
3756 if (src_use_node->data.use.resolution == TldResolutionUnresolved) {
3756 if (src_use_node->data.using_namespace.resolution == TldResolutionUnresolved) {
37573757 preview_use_decl(g, src_use_node, decls_scope);
37583758 }
37593759
3760 ConstExprValue *use_expr = src_use_node->data.use.using_namespace_value;
3760 ConstExprValue *use_expr = src_use_node->data.using_namespace.using_namespace_value;
37613761 if (type_is_invalid(use_expr->type)) {
37623762 decls_scope->any_imports_failed = true;
37633763 return;
37643764 }
37653765
3766 dst_use_node->data.use.resolution = TldResolutionOk;
3766 dst_use_node->data.using_namespace.resolution = TldResolutionOk;
37673767
37683768 assert(use_expr->special != ConstValSpecialRuntime);
37693769
......@@ -3821,7 +3821,7 @@ static void add_symbols_from_container(CodeGen *g, AstNode *src_use_node, AstNod
38213821
38223822 for (size_t i = 0; i < src_scope->use_decls.length; i += 1) {
38233823 AstNode *use_decl_node = src_scope->use_decls.at(i);
3824 if (use_decl_node->data.use.visib_mod != VisibModPrivate)
3824 if (use_decl_node->data.using_namespace.visib_mod != VisibModPrivate)
38253825 add_symbols_from_container(g, use_decl_node, dst_use_node, decls_scope);
38263826 }
38273827}
......@@ -3829,8 +3829,8 @@ static void add_symbols_from_container(CodeGen *g, AstNode *src_use_node, AstNod
38293829void resolve_use_decl(CodeGen *g, AstNode *node, ScopeDecls *decls_scope) {
38303830 assert(node->type == NodeTypeUse);
38313831
3832 if (node->data.use.resolution == TldResolutionOk ||
3833 node->data.use.resolution == TldResolutionInvalid)
3832 if (node->data.using_namespace.resolution == TldResolutionOk ||
3833 node->data.using_namespace.resolution == TldResolutionInvalid)
38343834 {
38353835 return;
38363836 }
......@@ -3840,20 +3840,20 @@ void resolve_use_decl(CodeGen *g, AstNode *node, ScopeDecls *decls_scope) {
38403840void preview_use_decl(CodeGen *g, AstNode *node, ScopeDecls *decls_scope) {
38413841 assert(node->type == NodeTypeUse);
38423842
3843 if (node->data.use.resolution == TldResolutionOk ||
3844 node->data.use.resolution == TldResolutionInvalid)
3843 if (node->data.using_namespace.resolution == TldResolutionOk ||
3844 node->data.using_namespace.resolution == TldResolutionInvalid)
38453845 {
38463846 return;
38473847 }
38483848
3849 node->data.use.resolution = TldResolutionResolving;
3849 node->data.using_namespace.resolution = TldResolutionResolving;
38503850 ConstExprValue *result = analyze_const_value(g, &decls_scope->base,
3851 node->data.use.expr, g->builtin_types.entry_type, nullptr);
3851 node->data.using_namespace.expr, g->builtin_types.entry_type, nullptr);
38523852
38533853 if (type_is_invalid(result->type))
38543854 decls_scope->any_imports_failed = true;
38553855
3856 node->data.use.using_namespace_value = result;
3856 node->data.using_namespace.using_namespace_value = result;
38573857}
38583858
38593859ZigType *add_source_file(CodeGen *g, ZigPackage *package, Buf *resolved_path, Buf *source_code,
......@@ -3980,9 +3980,9 @@ void semantic_analyze(CodeGen *g) {
39803980 {
39813981 for (; g->use_queue_index < g->use_queue.length; g->use_queue_index += 1) {
39823982 AstNode *use_decl_node = g->use_queue.at(g->use_queue_index);
3983 // Get the top-level scope where `use` is used
3983 // Get the top-level scope where `using_namespace` is used
39843984 ScopeDecls *decls_scope = get_container_scope(use_decl_node->owner);
3985 if (use_decl_node->data.use.resolution == TldResolutionUnresolved) {
3985 if (use_decl_node->data.using_namespace.resolution == TldResolutionUnresolved) {
39863986 preview_use_decl(g, use_decl_node, decls_scope);
39873987 resolve_use_decl(g, use_decl_node, decls_scope);
39883988 }
src/parser.cpp+6-6
......@@ -671,14 +671,14 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod) {
671671 return res;
672672 }
673673
674 Token *use = eat_token_if(pc, TokenIdKeywordUsingNamespace);
675 if (use != nullptr) {
674 Token *usingnamespace = eat_token_if(pc, TokenIdKeywordUsingNamespace);
675 if (usingnamespace != nullptr) {
676676 AstNode *expr = ast_expect(pc, ast_parse_expr);
677677 expect_token(pc, TokenIdSemicolon);
678678
679 AstNode *res = ast_create_node(pc, NodeTypeUse, use);
680 res->data.use.visib_mod = visib_mod;
681 res->data.use.expr = expr;
679 AstNode *res = ast_create_node(pc, NodeTypeUse, usingnamespace);
680 res->data.using_namespace.visib_mod = visib_mod;
681 res->data.using_namespace.expr = expr;
682682 return res;
683683 }
684684
......@@ -2939,7 +2939,7 @@ void ast_visit_node_children(AstNode *node, void (*visit)(AstNode **, void *cont
29392939 visit_field(&node->data.unwrap_optional.expr, visit, context);
29402940 break;
29412941 case NodeTypeUse:
2942 visit_field(&node->data.use.expr, visit, context);
2942 visit_field(&node->data.using_namespace.expr, visit, context);
29432943 break;
29442944 case NodeTypeBoolLiteral:
29452945 // none