Search in sources :

Example 1 with EBool

use of org.elasticsearch.painless.node.EBool in project elasticsearch by elastic.

the class Walker method visitBool.

@Override
public ANode visitBool(BoolContext ctx) {
    AExpression left = (AExpression) visit(ctx.expression(0));
    AExpression right = (AExpression) visit(ctx.expression(1));
    final Operation operation;
    if (ctx.BOOLAND() != null) {
        operation = Operation.AND;
    } else if (ctx.BOOLOR() != null) {
        operation = Operation.OR;
    } else {
        throw location(ctx).createError(new IllegalStateException("Illegal tree structure."));
    }
    return new EBool(location(ctx), operation, left, right);
}
Also used : EBool(org.elasticsearch.painless.node.EBool) AExpression(org.elasticsearch.painless.node.AExpression) Operation(org.elasticsearch.painless.Operation)

Aggregations

Operation (org.elasticsearch.painless.Operation)1 AExpression (org.elasticsearch.painless.node.AExpression)1 EBool (org.elasticsearch.painless.node.EBool)1