0

Is there a way to specify custom class name (meaning independent of the grammar name) for the ANTLRv3 generated Parser and Lexer classes?

So in the case of

grammar MDD;

//other stufff

Automatically it would crate MDDParser and MDDLexer, but I would like to have them as MDDBaseParser and MDDLexer.

4

1 に答える 1

1

いいえ、 のような結合された文法MDDでは、パーサーとレクサーは MDDParser と MDDLexer という名前になります。parser複合文法は、タイプ (または)を指定しない文法ですlexer

別のパーサー文法とレクサー文法を定義できます。

// put this in a file called MDDBaseParser.g
parser grammar MDDBaseParser;

parse
  :  Token+
  ;

と:

// put this in a file called MDDLexer.g
lexer grammar MDDLexer;

Token
  :  'a'..'z'
  ;

これで、パーサーとレクサーの両方のソース ファイルが、文法ファイルと同じ名前になります。

于 2010-04-06T07:29:47.700 に答える