Search in sources :

Example 1 with IfExpr

use of org.apache.asterix.lang.common.expression.IfExpr in project asterixdb by apache.

the class CloneAndSubstituteVariablesVisitor method visit.

@Override
public Pair<ILangExpression, VariableSubstitutionEnvironment> visit(IfExpr ifexpr, VariableSubstitutionEnvironment env) throws CompilationException {
    Pair<ILangExpression, VariableSubstitutionEnvironment> p1 = ifexpr.getCondExpr().accept(this, env);
    Pair<ILangExpression, VariableSubstitutionEnvironment> p2 = ifexpr.getThenExpr().accept(this, env);
    Pair<ILangExpression, VariableSubstitutionEnvironment> p3 = ifexpr.getElseExpr().accept(this, env);
    IfExpr i = new IfExpr((Expression) p1.first, (Expression) p2.first, (Expression) p3.first);
    return new Pair<>(i, env);
}
Also used : VariableSubstitutionEnvironment(org.apache.asterix.lang.common.rewrites.VariableSubstitutionEnvironment) IfExpr(org.apache.asterix.lang.common.expression.IfExpr) ILangExpression(org.apache.asterix.lang.common.base.ILangExpression) GbyVariableExpressionPair(org.apache.asterix.lang.common.expression.GbyVariableExpressionPair) Pair(org.apache.hyracks.algebricks.common.utils.Pair) QuantifiedPair(org.apache.asterix.lang.common.struct.QuantifiedPair)

Example 2 with IfExpr

use of org.apache.asterix.lang.common.expression.IfExpr in project asterixdb by apache.

the class DeepCopyVisitor method visit.

@Override
public IfExpr visit(IfExpr ifExpr, Void arg) throws CompilationException {
    Expression conditionExpr = (Expression) ifExpr.getCondExpr().accept(this, arg);
    Expression thenExpr = (Expression) ifExpr.getThenExpr().accept(this, arg);
    Expression elseExpr = (Expression) ifExpr.getElseExpr().accept(this, arg);
    return new IfExpr(conditionExpr, thenExpr, elseExpr);
}
Also used : IfExpr(org.apache.asterix.lang.common.expression.IfExpr) ILangExpression(org.apache.asterix.lang.common.base.ILangExpression) Expression(org.apache.asterix.lang.common.base.Expression) SelectExpression(org.apache.asterix.lang.sqlpp.expression.SelectExpression) CaseExpression(org.apache.asterix.lang.sqlpp.expression.CaseExpression) QuantifiedExpression(org.apache.asterix.lang.common.expression.QuantifiedExpression)

Aggregations

ILangExpression (org.apache.asterix.lang.common.base.ILangExpression)2 IfExpr (org.apache.asterix.lang.common.expression.IfExpr)2 Expression (org.apache.asterix.lang.common.base.Expression)1 GbyVariableExpressionPair (org.apache.asterix.lang.common.expression.GbyVariableExpressionPair)1 QuantifiedExpression (org.apache.asterix.lang.common.expression.QuantifiedExpression)1 VariableSubstitutionEnvironment (org.apache.asterix.lang.common.rewrites.VariableSubstitutionEnvironment)1 QuantifiedPair (org.apache.asterix.lang.common.struct.QuantifiedPair)1 CaseExpression (org.apache.asterix.lang.sqlpp.expression.CaseExpression)1 SelectExpression (org.apache.asterix.lang.sqlpp.expression.SelectExpression)1 Pair (org.apache.hyracks.algebricks.common.utils.Pair)1