private static class RexUtil.ExpressionNormalizer extends RexVisitorImpl<RexNode>
Modifier and Type | Class and Description |
---|---|
private static class |
RexUtil.ExpressionNormalizer.SubExprExistsException
Thrown if there is a sub-expression.
|
Modifier and Type | Field and Description |
---|---|
(package private) boolean |
allowDups |
(package private) java.util.Map<RexNode,RexNode> |
map |
deep
Modifier | Constructor and Description |
---|---|
protected |
ExpressionNormalizer(boolean allowDups) |
Modifier and Type | Method and Description |
---|---|
protected RexNode |
lookup(RexNode expr) |
protected RexNode |
register(RexNode expr) |
RexNode |
visitCall(RexCall call) |
RexNode |
visitCorrelVariable(RexCorrelVariable correlVariable) |
RexNode |
visitDynamicParam(RexDynamicParam dynamicParam) |
RexNode |
visitFieldAccess(RexFieldAccess fieldAccess) |
RexNode |
visitInputRef(RexInputRef inputRef) |
RexNode |
visitLiteral(RexLiteral literal) |
RexNode |
visitRangeRef(RexRangeRef rangeRef) |
visitArrayAnd, visitArrayOr, visitLocalRef, visitOver, visitPatternFieldRef, visitSubQuery, visitTableInputRef
public RexNode visitInputRef(RexInputRef inputRef)
visitInputRef
in interface RexVisitor<RexNode>
visitInputRef
in class RexVisitorImpl<RexNode>
public RexNode visitLiteral(RexLiteral literal)
visitLiteral
in interface RexVisitor<RexNode>
visitLiteral
in class RexVisitorImpl<RexNode>
public RexNode visitCorrelVariable(RexCorrelVariable correlVariable)
visitCorrelVariable
in interface RexVisitor<RexNode>
visitCorrelVariable
in class RexVisitorImpl<RexNode>
public RexNode visitCall(RexCall call)
visitCall
in interface RexVisitor<RexNode>
visitCall
in class RexVisitorImpl<RexNode>
public RexNode visitDynamicParam(RexDynamicParam dynamicParam)
visitDynamicParam
in interface RexVisitor<RexNode>
visitDynamicParam
in class RexVisitorImpl<RexNode>
public RexNode visitRangeRef(RexRangeRef rangeRef)
visitRangeRef
in interface RexVisitor<RexNode>
visitRangeRef
in class RexVisitorImpl<RexNode>
public RexNode visitFieldAccess(RexFieldAccess fieldAccess)
visitFieldAccess
in interface RexVisitor<RexNode>
visitFieldAccess
in class RexVisitorImpl<RexNode>
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.