问题描述
我正在用 ANTLR4 创建一种语言。我试图让函数作为方法的参数传递。但我无法找到任何资源。如果有可用的,也许有人可以提供提示或资源?
我的最终目标:
public int function1()
{
int a = function2(function3(1));
}
public int function2(int i)
{
return i + 1;
}
public int function3(int i)
{
return i+1;
}
解决方法
函数调用只是表达式规则中的替代:
expression
: expression ( '+' | '-' ) expression
| INTEGER
| IDENTIFIER
| functionCall
;
functionCall
: IDENTIFIER '(' arguments? ')'
;
arguments
: expression ( ',' expression )*
;