Class ConditionalExprOptimizer
java.lang.Object
org.apache.drill.common.expression.visitors.AbstractExprVisitor<LogicalExpression,Void,RuntimeException>
org.apache.drill.common.expression.visitors.ConditionalExprOptimizer
- All Implemented Interfaces:
ExprVisitor<LogicalExpression,
Void, RuntimeException>
public class ConditionalExprOptimizer
extends AbstractExprVisitor<LogicalExpression,Void,RuntimeException>
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvisitAnyValueExpression
(AnyValueExpression cast, Void value) visitBooleanOperator
(BooleanOperator op, Void value) visitCastExpression
(CastExpression cast, Void value) visitConvertExpression
(ConvertExpression cast, Void value) visitFunctionCall
(FunctionCall call, Void value) visitFunctionHolderExpression
(FunctionHolderExpression holder, Void value) visitIfExpression
(IfExpression ifExpr, Void value) visitUnknown
(LogicalExpression e, Void value) Handles implementation-specific expressions not known to the visitor structure.Methods inherited from class org.apache.drill.common.expression.visitors.AbstractExprVisitor
visitBooleanConstant, visitDateConstant, visitDecimal18Constant, visitDecimal28Constant, visitDecimal38Constant, visitDecimal9Constant, visitDoubleConstant, visitFloatConstant, visitIntConstant, visitIntervalDayConstant, visitIntervalYearConstant, visitLongConstant, visitNullConstant, visitNullExpression, visitParameter, visitQuotedStringConstant, visitSchemaPath, visitTimeConstant, visitTimeStampConstant, visitTypedFieldExpr, visitVarDecimalConstant
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
ConditionalExprOptimizer
public ConditionalExprOptimizer()
-
-
Method Details
-
visitBooleanOperator
public LogicalExpression visitBooleanOperator(BooleanOperator op, Void value) throws RuntimeException - Specified by:
visitBooleanOperator
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitBooleanOperator
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-
visitFunctionHolderExpression
public LogicalExpression visitFunctionHolderExpression(FunctionHolderExpression holder, Void value) throws RuntimeException - Specified by:
visitFunctionHolderExpression
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitFunctionHolderExpression
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-
visitUnknown
Description copied from class:AbstractExprVisitor
Handles implementation-specific expressions not known to the visitor structure. Since there are no "visitFoo" methods for these "unknown" expressions, subclassses should use the functionally-equivalentinstanceof
approach to parse out these "unknown" expressions.- Specified by:
visitUnknown
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitUnknown
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-
visitIfExpression
- Specified by:
visitIfExpression
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitIfExpression
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-
visitFunctionCall
- Specified by:
visitFunctionCall
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitFunctionCall
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-
visitCastExpression
public LogicalExpression visitCastExpression(CastExpression cast, Void value) throws RuntimeException - Specified by:
visitCastExpression
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitCastExpression
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-
visitConvertExpression
public LogicalExpression visitConvertExpression(ConvertExpression cast, Void value) throws RuntimeException - Specified by:
visitConvertExpression
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitConvertExpression
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-
visitAnyValueExpression
public LogicalExpression visitAnyValueExpression(AnyValueExpression cast, Void value) throws RuntimeException - Specified by:
visitAnyValueExpression
in interfaceExprVisitor<LogicalExpression,
Void, RuntimeException> - Overrides:
visitAnyValueExpression
in classAbstractExprVisitor<LogicalExpression,
Void, RuntimeException> - Throws:
RuntimeException
-