文法ファイルで ANTLR トランスレータジェネレータを呼び出します。
ANTLR タスクを使用するには、target 属性を処理する文法ファイルの名前に設定します。オプションで outputdirectory を設定して、生成されたファイルを特定のディレクトリに書き出すこともできます。それ以外の場合は、ANTLR は生成されたファイルを文法ファイルを含むディレクトリに書き込みます。
このタスクは、文法ファイル(または glib 属性で指定されたスーパー文法)が生成されたファイルより新しい場合にのみ、ANTLR を呼び出します。
注意: このタスクは、Apache Ant 配布版に含まれていない外部ライブラリに依存します。詳細については、ライブラリ依存関係を参照してください。
Antlr 2.7.2 注: ダウンロードで提供される Makefile の antlr-all.jar
ターゲットによって作成できる antlrall.jar が必要です。
属性 | 説明 | 必須 |
---|---|---|
target | 処理中の文法ファイル。 | はい |
outputdirectory | 生成されたファイルを書き出すディレクトリ。 | いいえ; 既定値は文法ファイルを含むディレクトリ |
glib | ターゲット文法がオーバーライドするオプションのスーパー文法ファイル。この機能は、高度な語彙でのみ必要です。 | いいえ |
debug | これが yesに設定されると、このフラグは生成されたパーサに、呼び出し時に ParseView デバッガを起動するコードを追加します。 注: ParseView はインストールする必要のある別のコンポーネントであり、インストールしないと文法にコンパイルエラーが発生します。 |
いいえ; 既定値は no |
html | この設定を yesにした場合は、ハイパーリンクされたアクションを使用して文法の HTML バージョンを出力します。 |
いいえ; 既定値は no |
diagnostic | この設定を yesにした場合は、ターゲット文法に基づいたデバッグ情報をテキストファイルで生成します。 |
いいえ; 既定値は no |
trace | この設定を yesにした場合は、すべてのルールに traceIn/traceOut を呼び出させます。 |
いいえ; 既定値は no |
traceParser | この設定を yesにした場合は、パーサールールのみを強制的に traceIn/traceOut を呼び出させます。 |
いいえ; 既定値は no |
traceLexer | この設定を yesにした場合は、レクサールールのみを強制的に traceIn/traceOut を呼び出させます。 |
いいえ; 既定値は no |
traceTreeWalker | この設定を yesにした場合は、ツリーウォーカールールのみを強制的に traceIn/traceOut を呼び出させます。 |
いいえ; 既定値は no |
dir | JVM を呼び出すディレクトリ。 | いいえ |
このタスクはネストされた <classpath>
要素をサポートしています。これは パスのような構造 を表します。元の ANTLR ディレクトリを指定する必要がある場合は、便宜上提供されています。ほとんどの場合、通常の Ant ライブラリリポジトリに適切な ANTLR jar をドロップするだけで十分です。
次の例のように、追加のパラメータをネストされた <jvmarg>
属性を介して新しい JVM に渡すことができます
<antlr target="..."> <jvmarg value="-Dfoo=bar"/> ... </antlr>
は、JIT なしで JVM で ANTLR を実行します。
<jvmarg>
は コマンドライン引数 で説明されているすべての属性を許可します。
文法ファイル etc/java.g で ANTLR を呼び出し、生成されたファイルを build/src に書き込みます
<antlr target="etc/java.g" outputdirectory="build/src"/>