Package org.apache.drill.exec.expr
Class CloneVisitor
java.lang.Object
org.apache.drill.common.expression.visitors.AbstractExprVisitor<LogicalExpression,Void,RuntimeException>
org.apache.drill.exec.expr.CloneVisitor
- All Implemented Interfaces:
ExprVisitor<LogicalExpression,Void, RuntimeException>
Creates a deep copy of a LogicalExpression. Specifically, it creates new instances of the literal expressions
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvisitBooleanOperator(BooleanOperator op, Void value) visitCastExpression(CastExpression e, Void value) visitConvertExpression(ConvertExpression e, Void value) visitDateConstant(ValueExpressions.DateExpression intExpr, Void value) visitDecimal18Constant(ValueExpressions.Decimal18Expression decExpr, Void value) visitDecimal28Constant(ValueExpressions.Decimal28Expression decExpr, Void value) visitDecimal38Constant(ValueExpressions.Decimal38Expression decExpr, Void value) visitDecimal9Constant(ValueExpressions.Decimal9Expression decExpr, Void value) visitDoubleConstant(ValueExpressions.DoubleExpression dExpr, Void value) visitFloatConstant(ValueExpressions.FloatExpression fExpr, Void value) visitFunctionCall(FunctionCall call, Void value) visitFunctionHolderExpression(FunctionHolderExpression holder, Void value) visitIfExpression(IfExpression ifExpr, Void value) visitIntConstant(ValueExpressions.IntExpression intExpr, Void value) visitIntervalDayConstant(ValueExpressions.IntervalDayExpression intExpr, Void value) visitIntervalYearConstant(ValueExpressions.IntervalYearExpression intExpr, Void value) visitLongConstant(ValueExpressions.LongExpression intExpr, Void value) visitNullConstant(TypedNullConstant e, Void value) visitNullExpression(NullExpression e, Void value) visitSchemaPath(SchemaPath path, Void value) visitTimeConstant(ValueExpressions.TimeExpression intExpr, Void value) visitTimeStampConstant(ValueExpressions.TimeStampExpression intExpr, Void value) visitUnknown(LogicalExpression e, Void value) Handles implementation-specific expressions not known to the visitor structure.visitVarDecimalConstant(ValueExpressions.VarDecimalExpression decExpr, Void value) Methods inherited from class org.apache.drill.common.expression.visitors.AbstractExprVisitor
visitAnyValueExpression, visitParameter, visitTypedFieldExpr
-
Constructor Details
-
CloneVisitor
public CloneVisitor()
-
-
Method Details
-
visitFunctionCall
- Specified by:
visitFunctionCallin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitFunctionCallin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitFunctionHolderExpression
public LogicalExpression visitFunctionHolderExpression(FunctionHolderExpression holder, Void value) throws RuntimeException - Specified by:
visitFunctionHolderExpressionin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitFunctionHolderExpressionin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitIfExpression
- Specified by:
visitIfExpressionin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitIfExpressionin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitBooleanOperator
public LogicalExpression visitBooleanOperator(BooleanOperator op, Void value) throws RuntimeException - Specified by:
visitBooleanOperatorin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitBooleanOperatorin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitSchemaPath
- Specified by:
visitSchemaPathin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitSchemaPathin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitFloatConstant
public LogicalExpression visitFloatConstant(ValueExpressions.FloatExpression fExpr, Void value) throws RuntimeException - Specified by:
visitFloatConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitFloatConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitIntConstant
public LogicalExpression visitIntConstant(ValueExpressions.IntExpression intExpr, Void value) throws RuntimeException - Specified by:
visitIntConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitIntConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitLongConstant
public LogicalExpression visitLongConstant(ValueExpressions.LongExpression intExpr, Void value) throws RuntimeException - Specified by:
visitLongConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitLongConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitDecimal9Constant
public LogicalExpression visitDecimal9Constant(ValueExpressions.Decimal9Expression decExpr, Void value) throws RuntimeException - Specified by:
visitDecimal9Constantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitDecimal9Constantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitDecimal18Constant
public LogicalExpression visitDecimal18Constant(ValueExpressions.Decimal18Expression decExpr, Void value) throws RuntimeException - Specified by:
visitDecimal18Constantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitDecimal18Constantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitDecimal28Constant
public LogicalExpression visitDecimal28Constant(ValueExpressions.Decimal28Expression decExpr, Void value) throws RuntimeException - Specified by:
visitDecimal28Constantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitDecimal28Constantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitDecimal38Constant
public LogicalExpression visitDecimal38Constant(ValueExpressions.Decimal38Expression decExpr, Void value) throws RuntimeException - Specified by:
visitDecimal38Constantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitDecimal38Constantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitVarDecimalConstant
public LogicalExpression visitVarDecimalConstant(ValueExpressions.VarDecimalExpression decExpr, Void value) throws RuntimeException - Specified by:
visitVarDecimalConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitVarDecimalConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitDateConstant
public LogicalExpression visitDateConstant(ValueExpressions.DateExpression intExpr, Void value) throws RuntimeException - Specified by:
visitDateConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitDateConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitTimeConstant
public LogicalExpression visitTimeConstant(ValueExpressions.TimeExpression intExpr, Void value) throws RuntimeException - Specified by:
visitTimeConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitTimeConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitTimeStampConstant
public LogicalExpression visitTimeStampConstant(ValueExpressions.TimeStampExpression intExpr, Void value) throws RuntimeException - Specified by:
visitTimeStampConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitTimeStampConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitIntervalYearConstant
public LogicalExpression visitIntervalYearConstant(ValueExpressions.IntervalYearExpression intExpr, Void value) throws RuntimeException - Specified by:
visitIntervalYearConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitIntervalYearConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitIntervalDayConstant
public LogicalExpression visitIntervalDayConstant(ValueExpressions.IntervalDayExpression intExpr, Void value) throws RuntimeException - Specified by:
visitIntervalDayConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitIntervalDayConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitDoubleConstant
public LogicalExpression visitDoubleConstant(ValueExpressions.DoubleExpression dExpr, Void value) throws RuntimeException - Specified by:
visitDoubleConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitDoubleConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitBooleanConstant
public LogicalExpression visitBooleanConstant(ValueExpressions.BooleanExpression e, Void value) throws RuntimeException - Specified by:
visitBooleanConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitBooleanConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitQuotedStringConstant
public LogicalExpression visitQuotedStringConstant(ValueExpressions.QuotedString e, Void value) throws RuntimeException - Specified by:
visitQuotedStringConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitQuotedStringConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitCastExpression
- Specified by:
visitCastExpressionin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitCastExpressionin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitConvertExpression
public LogicalExpression visitConvertExpression(ConvertExpression e, Void value) throws RuntimeException - Specified by:
visitConvertExpressionin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitConvertExpressionin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitNullConstant
- Specified by:
visitNullConstantin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitNullConstantin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitNullExpression
- Specified by:
visitNullExpressionin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitNullExpressionin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-
visitUnknown
Description copied from class:AbstractExprVisitorHandles implementation-specific expressions not known to the visitor structure. Since there are no "visitFoo" methods for these "unknown" expressions, subclassses should use the functionally-equivalentinstanceofapproach to parse out these "unknown" expressions.- Specified by:
visitUnknownin interfaceExprVisitor<LogicalExpression,Void, RuntimeException> - Overrides:
visitUnknownin classAbstractExprVisitor<LogicalExpression,Void, RuntimeException> - Throws:
RuntimeException
-