0

我正在使用 antlr IDE 和 antlr 3.4 进行 Eclipse,并创建了以下组合语法以用于命题逻辑

grammar Propositional;

options {
  language = Java;
}

@header {
  package antlr;
}

@lexer::header {
  package antlr;
}

formula:expression;

term 
    : ATOM
    | '(' expression ')'
    ;

negation
    : ('~')* term
    ;

and
    : negation (('^') negation)*
    ;

or
    : and (('|') and)*
    ;

implies
    : or (('>') or)*
    ;

expression
    : implies (('#') implies)*
    ;    

ATOM : 'a'..'z'+;
WS : (' ' | '\t')+ {$channel = HIDDEN;};

当我保存它时说构建成功并且解释器完全按照我想要的方式工作,但是生成的词法分析器和解析器存在许多问题,例如缺少 throw 语句或不正确的构造函数。

任何帮助将不胜感激,谢谢!

4

1 回答 1

0

已解决:有点傻,但它不喜欢被称为 antlr 的包

于 2013-01-31T19:32:11.823 回答