From 6dbe6a3e2b3f6ade79c6385d0f08a718f6cd36f7 Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Fri, 24 Jul 2020 08:22:17 -0500 Subject: [PATCH] Added field access to type signature so types can be from another package --- include/onyxastnodes.h | 6 ++++-- onyx | Bin 317088 -> 317320 bytes progs/ez.onyx | 30 ++++++++++++++++++++---------- progs/print_funcs.onyx | 5 +++++ src/onyxparser.c | 13 ++++++++++++- src/onyxsymres.c | 22 +++++++++++++++++----- src/onyxutils.c | 3 +-- 7 files changed, 59 insertions(+), 20 deletions(-) diff --git a/include/onyxastnodes.h b/include/onyxastnodes.h index 66985c1d..d35b0546 100644 --- a/include/onyxastnodes.h +++ b/include/onyxastnodes.h @@ -67,7 +67,6 @@ typedef enum AstKind { Ast_Kind_Binding, Ast_Kind_Function, Ast_Kind_Overloaded_Function, - Ast_Kind_Foreign, Ast_Kind_Block, Ast_Kind_Local_Group, Ast_Kind_Local, @@ -307,7 +306,6 @@ struct AstStructMember { AstTyped_base; u64 offset; }; // Top level nodes struct AstBinding { AstTyped_base; AstNode* node; }; -struct AstForeign { AstNode_base; OnyxToken *mod_token, *name_token; AstNode *import; }; struct AstIncludeFile { AstNode_base; OnyxToken *filename; }; struct AstUsePackage { AstNode_base; @@ -450,4 +448,8 @@ static inline b32 binop_is_assignment(AstBinaryOp* binop) { && binop->operation <= Binary_Op_Assign_End); } +static inline b32 node_is_type(AstNode* node) { + return (node->kind > Ast_Kind_Type_Start) && (node->kind < Ast_Kind_Type_End); +} + #endif // #ifndef ONYXASTNODES_H diff --git a/onyx b/onyx index 84af5265d80d74ae66898702014ff5b4ce1c4445..0c456e0e69af43e9faf543b9e2890a03e216d548 100755 GIT binary patch delta 110025 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

    FKfGEX;RJcB=p|a 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 diff --git a/progs/ez.onyx b/progs/ez.onyx index 69479551..e7d01677 100644 --- a/progs/ez.onyx +++ b/progs/ez.onyx @@ -1,24 +1,34 @@ use "progs/print_funcs" -use package printing +use package printing as p { + print_f32, PrintableArray +} Foo :: struct { - x : i32; - y : i32; + x : i32; + y : i32; } foo_sum :: proc (foo: ^Foo) -> i32 { - return foo.x + foo.y; + return foo.x + foo.y; +} + +asdf :: proc (pa: PrintableArray) { + for i: 0, pa.len p.print(pa.data[i] as i32); } proc #export "main" { - foo := __heap_start as ^Foo; - foo.x = 123; - foo.y = 321; - print(foo.foo_sum()); + foo := __heap_start as ^Foo; + foo.x = 123; + foo.y = 321; + p.print(foo.foo_sum()); + pa := (__heap_start as i32 + 8) as ^p.PrintableArray; + pa.data = __heap_start as ^u8; + pa.len = 5; + asdf(*pa); - print(1234); + p.print(1234); - print_f32(123.0f); + print_f32(123.0f); } \ No newline at end of file diff --git a/progs/print_funcs.onyx b/progs/print_funcs.onyx index 45d7e965..3f48aab3 100644 --- a/progs/print_funcs.onyx +++ b/progs/print_funcs.onyx @@ -6,6 +6,11 @@ print_f32 :: proc #foreign "host" "print" (value: f32) --- print_i64 :: proc #foreign "host" "print" (value: i64) --- print_f64 :: proc #foreign "host" "print" (value: f64) --- +PrintableArray :: struct { + data: ^u8; + len: i32; +} + print_i32arr :: proc (arr: [] i32, len: i32) { for i: 0, len print(arr[i]); } diff --git a/src/onyxparser.c b/src/onyxparser.c index bc1bf2b2..0867da82 100644 --- a/src/onyxparser.c +++ b/src/onyxparser.c @@ -798,7 +798,18 @@ static AstType* parse_type(OnyxParser* parser) { else if (parser->curr->type == Token_Type_Symbol) { AstNode* symbol_node = make_node(AstNode, Ast_Kind_Symbol); symbol_node->token = expect_token(parser, Token_Type_Symbol); - *next_insertion = (AstType *) symbol_node; + + if (parser->curr->type == '.') { + consume_token(parser); + AstFieldAccess* field = make_node(AstFieldAccess, Ast_Kind_Field_Access); + field->token = expect_token(parser, Token_Type_Symbol); + field->expr = (AstTyped *) symbol_node; + + *next_insertion = (AstType *) field; + } else { + *next_insertion = (AstType *) symbol_node; + } + next_insertion = NULL; } diff --git a/src/onyxsymres.c b/src/onyxsymres.c index 18e5df55..2ed0ae79 100644 --- a/src/onyxsymres.c +++ b/src/onyxsymres.c @@ -77,6 +77,19 @@ static AstType* symres_type(AstType* type) { return (AstType *) symbol_resolve(semstate.curr_scope, ((AstNode *) type)->token); } + if (type->kind == Ast_Kind_Field_Access) { + AstFieldAccess* field = (AstFieldAccess *) type; + symres_field_access(&field); + + if (!node_is_type((AstNode *) field)) { + onyx_message_add(Msg_Type_Literal, + type->token->pos, + "field access did not result in a type"); + } + + return (AstType *) field; + } + // NOTE: Already resolved if (type->kind == Ast_Kind_Basic_Type) return type; @@ -159,6 +172,7 @@ static void symres_size_of(AstSizeOf* so) { } static void symres_field_access(AstFieldAccess** fa) { + if ((*fa)->expr == NULL) return; symres_expression(&(*fa)->expr); if ((*fa)->expr == NULL) return; @@ -195,8 +209,6 @@ static void symres_expression(AstTyped** expr) { *expr = (AstTyped *) symbol_resolve(semstate.curr_scope, ((AstNode *) *expr)->token); break; - // NOTE: This is a good case, since it means the symbol is already resolved - case Ast_Kind_Local: break; case Ast_Kind_Function: case Ast_Kind_NumLit: @@ -214,9 +226,9 @@ static void symres_expression(AstTyped** expr) { symres_expression(&((AstArrayAccess *)(*expr))->expr); break; - default: - DEBUG_HERE; - break; + // NOTE: This is a good case, since it means the symbol is already resolved + case Ast_Kind_Local: + default: break; } } diff --git a/src/onyxutils.c b/src/onyxutils.c index 7031ee4c..f5c27cd4 100644 --- a/src/onyxutils.c +++ b/src/onyxutils.c @@ -18,7 +18,6 @@ static const char* ast_node_names[] = { "BINDING", "FUNCTION", "OVERLOADED_FUNCTION", - "FOREIGN", "BLOCK", "SCOPE", "LOCAL", @@ -105,7 +104,7 @@ Scope* scope_create(bh_allocator a, Scope* parent) { scope->parent = parent; scope->symbols = NULL; - bh_table_init(global_heap_allocator, scope->symbols, 16); + bh_table_init(global_heap_allocator, scope->symbols, 64); return scope; } -- 2.25.1