いくつかの特定の文字列の 1 つに一致するパーサー規則を持つ文法があるとします。特定の文字列ごとに別のパーサー ルールを作成するため、またはパーサー ルールを一般的なものにして、ビジター サブクラスで文字列をデコードするために、文法で行うべき適切なことはありますか?
質問する
91 次
1 に答える
2
特定の文字列に意味がある場合 (DSL のキーワードなど)、トークンが必要なようです。文法に含まれるどのような規則でも、作成したトークンを参照できます。
一般に、過度に一般化して大量の余分なコードを書かなければならないよりも、パーサーの作業をできる限り多く行うように文法を設定する方が適切です。
以下を参照してください: http://www.antlr.org/wiki/display/ANTLR4/Grammar+Structure
于 2013-10-31T17:03:22.040 に答える