Я использую ANTLR 3.1.3 для создания парсера. После импорта сгенерированного testParser я обнаружил несколько ошибок, таких как
попробуйте {dbg.enterDecision(2, solutionCanBacktrack[2]);
Описание Тип расположения пути к ресурсу Метод enterDecision(int) в типе DebugEventListener неприменим для аргументов (int, boolean) testParser.java /ANTLRTest/src строка 280 Java Проблема
Если я изменил на dbg.enterDecision(2), то все в порядке.
Грамматика следующая,
grammar Test;
options {output=AST;}
expr : mexpr (PLUS^ mexpr)* SEMI! ;
mexpr : atom (STAR^ atom)* ;
atom: INT ;
//class csharpTestLexer extends Lexer;
WS : (' ' | '\t' | '\n' | '\r') { $channel = HIDDEN; } ;
LPAREN: '(' ;
RPAREN: ')' ;
STAR: '*' ;
PLUS: '+' ;
SEMI: ';' ;
DIGIT : '0'..'9' ;
INT : (DIGIT)+ ;
Я использую ANTLRWorks 1.4.3 для создания лексера и парсера.
JDK 1.6
Любая причина этой ошибки?