From 045739d24a5780bf1a4a8fba026202a91a41b0df Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Fri, 5 Feb 2021 13:44:09 -0600 Subject: [PATCH] made method call syntax more useful --- bin/onyx | Bin 340520 -> 340616 bytes core/math.onyx | 10 +++-- include/onyxutils.h | 1 + onyx.exe | Bin 395264 -> 395776 bytes src/onyxchecker.c | 88 ++++++++++++++++++++++++++++---------------- src/onyxsymres.c | 11 ------ src/onyxutils.c | 25 ++++++++++--- 7 files changed, 83 insertions(+), 52 deletions(-) diff --git a/bin/onyx b/bin/onyx index 54b3bfd9b9cc7fa6687f00a274a8d38ea29372b0..a2d9e6ea7861fcb96e56088fac3680dab0b9c45d 100755 GIT binary patch delta 80440 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 KY9+| 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 T { // ln(x) = ln(2^n * v) = n * ln(2) + ln(v), v is in [1, 2] // +// FIX: This definition is very wrong. It casts E to be whatever the type of the argument is, +// which if it is an integer, will be 2! This should always return a floating point number! exp :: (p: $T) -> T do return pow(base = cast(T) E, p = p); pow :: proc { @@ -224,10 +226,10 @@ log :: (a: $T, base: $R) -> T { // operation first, and then default to a polymoprhic function that works on any type. // The clunky part about these at the moment is that, if you wanted to pass 'max' to // a procedure, you would have to pass 'max_poly' instead, because overloaded functions -// are not resolved when used by value, i.e. foo : (f32) -> f32 = math.max; Even if they -// would be however, the fact that these overloads are intrinsic means they cannot be -// reference from the element section and therefore cannot be passed around or used as -// values. +// are not resolved when used by value, i.e. foo : (f32, f32) -> f32 = math.max; Even if +// they would be however, the fact that these overloads are intrinsic means they cannot +// be reference from the element section and therefore cannot be passed around or used +// as values. max :: proc { wasm.max_f32, wasm.max_f64, max_poly } max_poly :: (a: $T, b: T) -> T { if a >= b do return a; diff --git a/include/onyxutils.h b/include/onyxutils.h index 312ed66a..90963f3f 100644 --- a/include/onyxutils.h +++ b/include/onyxutils.h @@ -20,6 +20,7 @@ void symbol_builtin_introduce(Scope* scope, char* sym, AstNode *node); void symbol_subpackage_introduce(Scope* scope, OnyxToken* sym, AstPackage *node); AstNode* symbol_raw_resolve(Scope* start_scope, char* sym); AstNode* symbol_resolve(Scope* start_scope, OnyxToken* tkn); +AstNode* try_symbol_raw_resolve_from_node(AstNode* node, char* symbol); AstNode* try_symbol_resolve_from_node(AstNode* node, OnyxToken* token); u32 char_to_base16_value(char x); diff --git a/onyx.exe b/onyx.exe index 509874eeacfd103b65f662878ac20b4433e909c9..09b90cbc43282c55b2662569d476589f7a03e7eb 100644 GIT binary patch delta 73026 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 delta 73157 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 != NULL) CHECK(statement, (AstNode *) ifnode->assignment); + if (ifnode->assignment != NULL) CHECK(statement, (AstNode **) &ifnode->assignment); CHECK(expression, &ifnode->cond); @@ -124,14 +125,14 @@ CheckStatus check_if(AstIfWhile* ifnode) { return Check_Error; } - if (ifnode->true_stmt) CHECK(statement, (AstNode *) ifnode->true_stmt); - if (ifnode->false_stmt) CHECK(statement, (AstNode *) ifnode->false_stmt); + if (ifnode->true_stmt) CHECK(statement, (AstNode **) &ifnode->true_stmt); + if (ifnode->false_stmt) CHECK(statement, (AstNode **) &ifnode->false_stmt); return Check_Success; } CheckStatus check_while(AstIfWhile* whilenode) { - if (whilenode->assignment != NULL) CHECK(statement, (AstNode *) whilenode->assignment); + if (whilenode->assignment != NULL) CHECK(statement, (AstNode **) &whilenode->assignment); CHECK(expression, &whilenode->cond); @@ -140,8 +141,8 @@ CheckStatus check_while(AstIfWhile* whilenode) { return Check_Error; } - if (whilenode->true_stmt) CHECK(statement, (AstNode *) whilenode->true_stmt); - if (whilenode->false_stmt) CHECK(statement, (AstNode *) whilenode->false_stmt); + if (whilenode->true_stmt) CHECK(statement, (AstNode **) &whilenode->true_stmt); + if (whilenode->false_stmt) CHECK(statement, (AstNode **) &whilenode->false_stmt); return Check_Success; } @@ -240,7 +241,7 @@ static b32 add_case_to_switch_statement(AstSwitch* switchnode, u64 case_value, A } CheckStatus check_switch(AstSwitch* switchnode) { - if (switchnode->assignment != NULL) CHECK(statement, (AstNode *) switchnode->assignment); + if (switchnode->assignment != NULL) CHECK(statement, (AstNode **) &switchnode->assignment); CHECK(expression, &switchnode->expr); resolve_expression_type(switchnode->expr); @@ -1255,11 +1256,9 @@ CheckStatus check_array_access(AstArrayAccess* aa) { || aa->addr->type->kind == Type_Kind_DynArray || aa->addr->type->kind == Type_Kind_VarArgs) { // If we are accessing on a slice or a dynamic array, implicitly add a field access for the data member - StructMember smem; type_lookup_member(aa->addr->type, "data", &smem); - AstFieldAccess* fa = make_field_access(context.ast_alloc, aa->addr, "data"); fa->type = smem.type; fa->offset = smem.offset; @@ -1314,23 +1313,18 @@ CheckStatus check_field_access(AstFieldAccess** pfield) { } if (!type_lookup_member(field->expr->type, field->field, &smem)) { - AstStructType* struct_node = (AstStructType *) field->expr->type->ast_type; - assert(struct_node); - assert(struct_node->kind == Ast_Kind_Struct_Type); - - AstNode* n = symbol_raw_resolve(struct_node->scope, field->field); + AstType* type_node = field->expr->type->ast_type; + AstNode* n = try_symbol_raw_resolve_from_node((AstNode *) type_node, field->field); if (n) { *pfield = (AstFieldAccess *) n; return Check_Success; - - } else { - onyx_report_error(field->token->pos, - "Field '%s' does not exists on '%s'.", - field->field, - node_get_type_name(field->expr)); - - return Check_Error; } + + onyx_report_error(field->token->pos, + "Field '%s' does not exists on '%s'.", + field->field, + node_get_type_name(field->expr)); + return Check_Error; } field->offset = smem.offset; @@ -1340,6 +1334,33 @@ CheckStatus check_field_access(AstFieldAccess** pfield) { return Check_Success; } +CheckStatus check_method_call(AstBinaryOp** mcall) { + CHECK(expression, &(*mcall)->left); + + AstTyped* implicit_argument = (*mcall)->left; + + // Implicitly take the address of the value if it is not already a pointer type. + // This could be weird to think about semantically so some testing with real code + // would be good. - brendanfh 2020/02/05 + if (implicit_argument->type->kind != Type_Kind_Pointer) + implicit_argument = (AstTyped *) make_address_of(context.ast_alloc, implicit_argument); + + implicit_argument = (AstTyped *) make_argument(context.ast_alloc, implicit_argument); + + // Symbol resolution should have ensured that this is call node. + AstCall* call_node = (AstCall *) (*mcall)->right; + assert(call_node->kind == Ast_Kind_Call); + + bh_arr_insertn(call_node->args.values, 0, 1); + call_node->args.values[0] = implicit_argument; + + CHECK(call, call_node); + call_node->next = (*mcall)->next; + + *mcall = (AstBinaryOp *) call_node; + return Check_Success; +} + CheckStatus check_size_of(AstSizeOf* so) { fill_in_array_count(so->so_ast_type); @@ -1410,6 +1431,7 @@ CheckStatus check_expression(AstTyped** pexpr) { case Ast_Kind_Slice: case Ast_Kind_Array_Access: retval = check_array_access((AstArrayAccess *) expr); break; case Ast_Kind_Field_Access: retval = check_field_access((AstFieldAccess **) pexpr); break; + case Ast_Kind_Method_Call: retval = check_method_call((AstBinaryOp **) pexpr); break; case Ast_Kind_Size_Of: retval = check_size_of((AstSizeOf *) expr); break; case Ast_Kind_Align_Of: retval = check_align_of((AstAlignOf *) expr); break; case Ast_Kind_Range_Literal: retval = check_range_literal((AstRangeLiteral **) pexpr); break; @@ -1495,7 +1517,9 @@ CheckStatus check_global(AstGlobal* global) { return Check_Success; } -CheckStatus check_statement(AstNode* stmt) { +CheckStatus check_statement(AstNode** pstmt) { + AstNode* stmt = *pstmt; + switch (stmt->kind) { case Ast_Kind_Jump: return Check_Success; @@ -1505,29 +1529,29 @@ CheckStatus check_statement(AstNode* stmt) { case Ast_Kind_For: return check_for((AstFor *) stmt); case Ast_Kind_Switch: return check_switch((AstSwitch *) stmt); case Ast_Kind_Block: return check_block((AstBlock *) stmt); - case Ast_Kind_Defer: return check_statement(((AstDefer *) stmt)->stmt); + case Ast_Kind_Defer: return check_statement(&((AstDefer *) stmt)->stmt); case Ast_Kind_Binary_Op: stmt->flags |= Ast_Flag_Expr_Ignored; - return check_binaryop((AstBinaryOp **) &stmt, 1); + return check_binaryop((AstBinaryOp **) pstmt, 1); default: stmt->flags |= Ast_Flag_Expr_Ignored; - return check_expression((AstTyped **) &stmt); + return check_expression((AstTyped **) pstmt); } } -CheckStatus check_statement_chain(AstNode* start) { - while (start) { +CheckStatus check_statement_chain(AstNode** start) { + while (*start) { CHECK(statement, start); - start = start->next; + start = &(*start)->next; } return Check_Success; } CheckStatus check_block(AstBlock* block) { - CHECK(statement_chain, block->body); + CHECK(statement_chain, &block->body); bh_arr_each(AstTyped *, value, block->allocate_exprs) { fill_in_type(*value); diff --git a/src/onyxsymres.c b/src/onyxsymres.c index 126135cc..dd3053ac 100644 --- a/src/onyxsymres.c +++ b/src/onyxsymres.c @@ -315,7 +315,6 @@ static void symres_pipe(AstBinaryOp** pipe) { *pipe = (AstBinaryOp *) call_node; } -// nocheckin // CLEANUP: This is an experimental feature and might be removed in the future. // I noticed a common pattern when writing in Onyx is something that looks like this: // @@ -336,20 +335,10 @@ static void symres_method_call(AstBinaryOp** mcall) { symres_expression(&(*mcall)->left); if ((*mcall)->left == NULL) return; - bh_arr_insertn(call_node->args.values, 0, 1); - - AstTyped* implicit_pointer = (AstTyped *) make_address_of(context.ast_alloc, (*mcall)->left); - call_node->args.values[0] = (AstTyped *) make_argument(context.ast_alloc, implicit_pointer); - AstFieldAccess* implicit_field_access = make_field_access(context.ast_alloc, (*mcall)->left, NULL); implicit_field_access->token = call_node->callee->token; call_node->callee = (AstTyped *) implicit_field_access; symres_expression((AstTyped **) &call_node); - - call_node->next = (*mcall)->next; - - // NOTE: Not a BinaryOp node - *mcall = (AstBinaryOp *) call_node; } static void symres_unaryop(AstUnaryOp** unaryop) { diff --git a/src/onyxutils.c b/src/onyxutils.c index 9c6bd506..b1d99c21 100644 --- a/src/onyxutils.c +++ b/src/onyxutils.c @@ -140,13 +140,20 @@ AstNode* symbol_resolve(Scope* start_scope, OnyxToken* tkn) { return res; } -AstNode* try_symbol_resolve_from_node(AstNode* node, OnyxToken* token) { +AstNode* try_symbol_raw_resolve_from_node(AstNode* node, char* symbol) { + // CLEANUP: So many checks for null.... + if (!node) return NULL; + if (node->kind == Ast_Kind_Type_Raw_Alias) node = (AstNode *) ((AstTypeRawAlias *) node)->to->ast_type; + if (!node) return NULL; + if (node->kind == Ast_Kind_Type_Alias) node = (AstNode *) ((AstTypeAlias *) node)->to; + if (!node) return NULL; + // A single pointer can be dereferenced to lookup symbols in struct. if (node->kind == Ast_Kind_Pointer_Type) node = (AstNode *) ((AstPointerType *) node)->elem; @@ -156,28 +163,36 @@ AstNode* try_symbol_resolve_from_node(AstNode* node, OnyxToken* token) { switch (node->kind) { case Ast_Kind_Package: { AstPackage* package = (AstPackage *) node; - return symbol_resolve(package->package->scope, token); + return symbol_raw_resolve(package->package->scope, symbol); } case Ast_Kind_Enum_Type: { AstEnumType* etype = (AstEnumType *) node; - return symbol_resolve(etype->scope, token); + return symbol_raw_resolve(etype->scope, symbol); } case Ast_Kind_Struct_Type: { AstStructType* stype = (AstStructType *) node; - return symbol_resolve(stype->scope, token); + return symbol_raw_resolve(stype->scope, symbol); } case Ast_Kind_Poly_Struct_Type: { AstStructType* stype = ((AstPolyStructType *) node)->base_struct; - return symbol_resolve(stype->scope, token); + return symbol_raw_resolve(stype->scope, symbol); } } return NULL; } +AstNode* try_symbol_resolve_from_node(AstNode* node, OnyxToken* token) { + token_toggle_end(token); + AstNode* result = try_symbol_raw_resolve_from_node(node, token->text); + token_toggle_end(token); + + return result; +} + void scope_clear(Scope* scope) { bh_table_clear(scope->symbols); } -- 2.25.1