// TODO decimal
throw getSyntaxError("number");
}
}
if (currentTokenType == VALUE) {
Literal literal = factory.literal(currentValue);
read();
return literal;
} else if (currentTokenType == PARAMETER) {
read();
String name = readName();
BindVariableValue var = (BindVariableValue) bindVariables.get(name);
if (var == null) {
var = factory.bindVariable(name);
bindVariables.put(name, var);
}
return var;
} else if (readIf("TRUE")) {
Literal literal = factory.literal(valueFactory.createValue(true));
return literal;
} else if (readIf("FALSE")) {
Literal literal = factory.literal(valueFactory.createValue(false));
return literal;
} else {
throw getSyntaxError("static operand");
}
}