私の文法では、関数の引数は必須ではありません。たとえば、次のようになります。
foo (param1,,, param4) // 有効です
この文法を考慮すると:
expressionlist
: COMMA* expression?
(COMMA expression?) *
;
私のリスナーでは、コンテキスト配列には 2 つの要素しかありません。
@ Override public void exitExpressionList (ExpressionListContext ctx) {
ctx.expression (0). getText () / / Retuns "param1"
ctx.expression (1). getText () / / Retuns "param4"
}
4 つの引数があることと、それらの順序を知りたいです。
ctx MyArryList ... (0) / / Retuns "param1"
ctx MyArryList ... (1) / / EMPTY
ctx MyArryList ... (2) / / EMPTY
ctx MyArryList ... (3) / / Retuns "param4"
COMMA を見つけたときに、コンテキスト ホワイトを追加することは可能ですか?
ありがとうございました