use of org.csstudio.autocomplete.parser.engine.expr.ExprConditionalOperator in project yamcs-studio by yamcs.
the class ExprParser method parseConditionalOperator.
private void parseConditionalOperator(ExprToken token, ExprLexer lexer) throws ExprException, IOException {
Expr c = current;
current = null;
ExprToken e = null;
ExprConditionalOperator co = new ExprConditionalOperator(c, null, null);
while ((e = lexer.next()) != null) {
if (e.type.equals(ExprTokenType.Colon)) {
if ((e = lexer.next()) != null) {
current = null;
parseToken(lexer, e);
co.setValueIfFalse(current == null ? new ExprMissing() : current);
} else {
co.setValueIfFalse(new ExprMissing());
}
break;
} else {
parseToken(lexer, e);
co.setValueIfTrue(current == null ? new ExprMissing() : current);
}
}
setValue(co);
}
Aggregations