|
|
|
@ -13,9 +13,9 @@ static auto g_grammar = R"( |
|
|
|
|
WHILE <- 'while' _ EXPRESSION BLOCK |
|
|
|
|
IF <- 'if' _ EXPRESSION BLOCK ('else' _ 'if' _ EXPRESSION BLOCK)* ('else' _ BLOCK)? |
|
|
|
|
FUNCTION <- 'fn' _ PARAMETERS BLOCK |
|
|
|
|
PARAMETERS <- '(' _ IDENTIFIER* ')' _
|
|
|
|
|
PARAMETERS <- '(' _ (IDENTIFIER (',' _ IDENTIFIER)*)? ')' _ |
|
|
|
|
FUNCTION_CALL <- IDENTIFIER ARGUMENTS |
|
|
|
|
ARGUMENTS <- '(' _ EXPRESSION* ')' _
|
|
|
|
|
ARGUMENTS <- '(' _ (EXPRESSION (', ' _ EXPRESSION)*)? ')' _ |
|
|
|
|
|
|
|
|
|
PRIMARY <- CONDITION (CONDITION_OPERATOR CONDITION)? |
|
|
|
|
CONDITION <- TERM (TERM_OPERATOR TERM)* |
|
|
|
|