diff --git a/analyzers/test/test.l b/analyzers/test/test.l index ab16484..c98fc8e 100644 --- a/analyzers/test/test.l +++ b/analyzers/test/test.l @@ -118,10 +118,10 @@ LETTER_OR_DIGIT [a-zA-Z0-9_] return STRING_LITERAL; } -{LETTER}{LETTER_OR_DIGIT}*(\.{BIG_LETTER}{LETTER_OR_DIGIT}*)? { +{LETTER}{LETTER_OR_DIGIT}*(\.{LETTER}{LETTER_OR_DIGIT}*)? { yylval.str = strdup(yytext); if (strchr(yytext, '.') != NULL) { - return FROM_PACKAGE_IDENTIFIER; + return WITH_DOT_IDENTIFIER; } else { return IDENTIFIER; } diff --git a/analyzers/test/test.y b/analyzers/test/test.y index f14175c..7363a63 100644 --- a/analyzers/test/test.y +++ b/analyzers/test/test.y @@ -34,7 +34,7 @@ void free_node(char *str) { %token RUNE BYTE BOOL_LITERAL %token FLOAT32 FLOAT64 %token COMPLEX64 COMPLEX128 -%token IDENTIFIER FROM_PACKAGE_IDENTIFIER +%token IDENTIFIER WITH_DOT_IDENTIFIER %token AND OR NOT EQ NEQ LT GT LEQ GEQ %left PLUS_EQ MINUS_EQ MUL_EQ DIV_EQ MOD_EQ @@ -57,7 +57,6 @@ program: | program statement ; - statement: | func_call SEMICOLON { printf("\033[1;33mSTATEMENT: func_call\033[0m\n"); } @@ -78,6 +77,11 @@ statement: block: LBRACE statements_list RBRACE ; + + +any_identifier: + IDENTIFIER + | WITH_DOT_IDENTIFIER // // lists @@ -290,8 +294,7 @@ import_list: // functions func_call: - IDENTIFIER LPAREN math_expr_or_literals_list_or_empty RPAREN - | FROM_PACKAGE_IDENTIFIER LPAREN math_expr_or_literals_list_or_empty RPAREN + any_identifier LPAREN math_expr_or_literals_list_or_empty RPAREN arg_declaration: IDENTIFIER type