uwerotfheld
Grünschnabel
Hallo zusammen,
ich habe eine JavaCC Grammatik, welche leider nicht tut was soll, obwohl sie ohne Fehler durch JavaJJ und JavaCC durchläuft. Hier ein Auszug:
wobei die WhereList wieder zu einer Condition abgeleitet wird. Die Grammatik soll im Prinzip folgende Optionen unterscheiden:
UnaryOperation: A++
BinaryOperation: A > 5
TernarayOperation: A BETWEEN 4 AND 5
wobei ++, > und Betweeen jeweils die Operatoren sind.
Wie gesagt, JavaJJ und JavaCC laufen ohne Fehler bzw Warnung durch, wenn ich aber den folgenden Ausdruck teste:
dann sagt er:
Wo liegt mein Fehler?
Vielen Dank schon einmal.
ich habe eine JavaCC Grammatik, welche leider nicht tut was soll, obwohl sie ohne Fehler durch JavaJJ und JavaCC durchläuft. Hier ein Auszug:
Code:
void ConditionalExpression(): { }
{
"(" WhereList() ")" |
Condition() |
}
void Condition(): {}
{
LOOKAHEAD( UnaryOperation() )
UnaryOperation() |
LOOKAHEAD( BinaryOperation() )
BinaryOperation() |
LOOKAHEAD( TernaryOperation() )
TernaryOperation()
}
void UnaryOperation():{}
{
Var() UnaryOperator()
}
void BinaryOperation():{}
{
Var() BinaryOperator() Value()
}
void TernaryOperation():{}
{
Var() TernaryOperator() TernaryOperationArguments()
}
wobei die WhereList wieder zu einer Condition abgeleitet wird. Die Grammatik soll im Prinzip folgende Optionen unterscheiden:
UnaryOperation: A++
BinaryOperation: A > 5
TernarayOperation: A BETWEEN 4 AND 5
wobei ++, > und Betweeen jeweils die Operatoren sind.
Wie gesagt, JavaJJ und JavaCC laufen ohne Fehler bzw Warnung durch, wenn ich aber den folgenden Ausdruck teste:
Code:
( A > 5 )
Code:
Encountered "( A >" at line 1, column 20.
Was expecting one of:
"(" "(" ...
"(" "A" ...
"(" "B" ...
"(" "C" ...
"(" "A" "AND" ...
"(" "B" "OR" ...
"(" "C" ")" ...
"A" ...
"B" ...
"C" ...
Wo liegt mein Fehler?
Vielen Dank schon einmal.