1
代替ラベルを持つパーサールールがあります。
私は、ラベルのいずれかがよく訪問されたときのための訪問者のメソッドを実装したいと思います:すべてのラベルの訪問者メソッド
someRule
: 'a' #aLabel
| 'b' #bLabel
| 'c' #cLabel
;
そして、私はこのようないくつかの方法が必要です。あなたは終了しますあなたのようなラベル付き
T visitSomeRule(SomeRuleContext ctx)
することにより、この経験と確定ANTLR4リファレンスおそらく、私は訪問方法を無効にして、議論のタイプをチェックできますか?しかし、それはハッキリのように見える。 – Midnightas
はい、それは私の答えで言及していたものです。代替ラベルに関するTerence Parrの本を読んだ場合、この機能が、より焦点を絞ったサブクラス化によって「より正確な」コンテキストを提供するために追加されたことは明らかです。そして、私は自分の仕事の大部分でラベルの使用を好むことがわかった。しかし、より高いレベルのコンテキストが本当に必要な場合は、確かに子どもを繰り返して、そのタイプを調べ、個別に行動することができます。それは可能で、私はそれをやりました。私は別のラベルについて学ぶまで。 ;) – TomServo