FROM_PACKAGE_IDENTIFIER -> WITH_DOT_IDENTIFIER
parent
2973ff1f2f
commit
d06d314b12
|
@ -118,10 +118,10 @@ LETTER_OR_DIGIT [a-zA-Z0-9_]
|
||||||
return STRING_LITERAL;
|
return STRING_LITERAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
{LETTER}{LETTER_OR_DIGIT}*(\.{BIG_LETTER}{LETTER_OR_DIGIT}*)? {
|
{LETTER}{LETTER_OR_DIGIT}*(\.{LETTER}{LETTER_OR_DIGIT}*)? {
|
||||||
yylval.str = strdup(yytext);
|
yylval.str = strdup(yytext);
|
||||||
if (strchr(yytext, '.') != NULL) {
|
if (strchr(yytext, '.') != NULL) {
|
||||||
return FROM_PACKAGE_IDENTIFIER;
|
return WITH_DOT_IDENTIFIER;
|
||||||
} else {
|
} else {
|
||||||
return IDENTIFIER;
|
return IDENTIFIER;
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,7 +34,7 @@ void free_node(char *str) {
|
||||||
%token RUNE BYTE BOOL_LITERAL
|
%token RUNE BYTE BOOL_LITERAL
|
||||||
%token FLOAT32 FLOAT64
|
%token FLOAT32 FLOAT64
|
||||||
%token COMPLEX64 COMPLEX128
|
%token COMPLEX64 COMPLEX128
|
||||||
%token <str> IDENTIFIER FROM_PACKAGE_IDENTIFIER
|
%token <str> IDENTIFIER WITH_DOT_IDENTIFIER
|
||||||
%token AND OR NOT EQ NEQ LT GT LEQ GEQ
|
%token AND OR NOT EQ NEQ LT GT LEQ GEQ
|
||||||
|
|
||||||
%left PLUS_EQ MINUS_EQ MUL_EQ DIV_EQ MOD_EQ
|
%left PLUS_EQ MINUS_EQ MUL_EQ DIV_EQ MOD_EQ
|
||||||
|
@ -57,7 +57,6 @@ program:
|
||||||
| program statement
|
| program statement
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
statement:
|
statement:
|
||||||
| func_call SEMICOLON
|
| func_call SEMICOLON
|
||||||
{ printf("\033[1;33mSTATEMENT: func_call\033[0m\n"); }
|
{ printf("\033[1;33mSTATEMENT: func_call\033[0m\n"); }
|
||||||
|
@ -78,6 +77,11 @@ statement:
|
||||||
block:
|
block:
|
||||||
LBRACE statements_list RBRACE
|
LBRACE statements_list RBRACE
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
any_identifier:
|
||||||
|
IDENTIFIER
|
||||||
|
| WITH_DOT_IDENTIFIER
|
||||||
//
|
//
|
||||||
|
|
||||||
// lists
|
// lists
|
||||||
|
@ -290,8 +294,7 @@ import_list:
|
||||||
|
|
||||||
// functions
|
// functions
|
||||||
func_call:
|
func_call:
|
||||||
IDENTIFIER LPAREN math_expr_or_literals_list_or_empty RPAREN
|
any_identifier LPAREN math_expr_or_literals_list_or_empty RPAREN
|
||||||
| FROM_PACKAGE_IDENTIFIER LPAREN math_expr_or_literals_list_or_empty RPAREN
|
|
||||||
|
|
||||||
arg_declaration:
|
arg_declaration:
|
||||||
IDENTIFIER type
|
IDENTIFIER type
|
||||||
|
|
Loading…
Reference in New Issue