私はAntlrを初めて使用し、Antlr3を使用して基本的な文法を定義しました。
文法は以下のとおりです。
grammar data;
@header {
package com.data.language;
}
null : 'null';
data : null | STRING | INTEGER;
STRING : ('a'..'z'|'A'..'Z')+;
INTEGER : '0'..'9'+;
これは完全に機能し、ANTLRWorksがコードを生成します。ただし、レクサー内でdataキーワードを使用したいと思います。例えば:
I : data '*' INTEGER;
問題は、これが実行されると、次の例外が発生することです。
Error 106: reference to undefined value: data
ANTLRWorksのグラフ内にデータが表示されません。Iレクサーの*INTEGERしか表示されません。
私がやろうとしていることは可能ですか?どうしてそれは可能ですか?