Sto usando antlr IDE per eclipse con antlr 3.4 e ho creato la seguente grammatica combinata da usare sulla logica proposizionale
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;};
Quando salgo, dice che la costruzione è andata a buon fine e ill'interprete funziona esattamente come voglio, tuttavia il lexer e il parser generati hanno molti problemi, come mancate dichiarazioni di lancio o costruttori errati.
Qualsiasi aiuto sarebbe molto apprezzato, Grazie!
risposte:
0 per risposta № 1Risolto: un po 'sciocco, ma non mi piace che il pacchetto venga chiamato antlr