0
パーズツリーに入力を解析するパーサーを作成する必要がありますが、トークンとトークンが自動的に生成されて問題が発生しました。次の例では、私の問題.Thisの短いバージョンである文法である:レクサーでANTLRトークンが自動生成される
s : a B a;
a : '-' C | C;
B : '-' | '+';
C : '1' | '2';>
WS : (' ' | '\t' | '\r' | '\n')+ -> skip ;
マイ入力:- 1 - 2
。
私の出力ツリーは(s (a - 1) <missing B> (a - 2))
です。自動ファイルlexer.javaで生成されたT __ *のようないくつかのトークンがある(s (a - 1) - (a 2))
私が欲しいの出力ツリーがあります。私は彼らのうちの1人が私のトークンBを複製するT__* : '-'
であると信じています。最初に現れるので、-
というシンボルはBに通じません。シンボル-
のすべてがT __ *につながります。私はこれが理由だと思う。私は正しい?
正しいツリーを取得するにはどうすればよいですか?