private class PushProjector.InputSpecialOpFinder extends RexVisitorImpl<java.lang.Void>
Modifier and Type | Field and Description |
---|---|
private ImmutableBitSet |
leftFields |
private PushProjector.ExprCondition |
preserveExprCondition |
private java.util.List<RexNode> |
preserveLeft |
private java.util.List<RexNode> |
preserveRight |
private java.util.BitSet |
rexRefs |
private ImmutableBitSet |
rightFields |
private Strong |
strong |
private ImmutableBitSet |
strongFields |
deep
Constructor and Description |
---|
InputSpecialOpFinder(java.util.BitSet rexRefs,
ImmutableBitSet leftFields,
ImmutableBitSet rightFields,
ImmutableBitSet strongFields,
PushProjector.ExprCondition preserveExprCondition,
java.util.List<RexNode> preserveLeft,
java.util.List<RexNode> preserveRight) |
Modifier and Type | Method and Description |
---|---|
private boolean |
isStrong(ImmutableBitSet exprArgs,
RexNode call) |
private boolean |
preserve(RexNode call) |
java.lang.Void |
visitCall(RexCall call) |
java.lang.Void |
visitInputRef(RexInputRef inputRef) |
visitArrayAnd, visitArrayOr, visitCorrelVariable, visitDynamicParam, visitFieldAccess, visitLiteral, visitLocalRef, visitOver, visitPatternFieldRef, visitRangeRef, visitSubQuery, visitTableInputRef
private final java.util.BitSet rexRefs
private final ImmutableBitSet leftFields
private final ImmutableBitSet rightFields
private final ImmutableBitSet strongFields
private final PushProjector.ExprCondition preserveExprCondition
private final java.util.List<RexNode> preserveLeft
private final java.util.List<RexNode> preserveRight
private final Strong strong
InputSpecialOpFinder(java.util.BitSet rexRefs, ImmutableBitSet leftFields, ImmutableBitSet rightFields, ImmutableBitSet strongFields, PushProjector.ExprCondition preserveExprCondition, java.util.List<RexNode> preserveLeft, java.util.List<RexNode> preserveRight)
public java.lang.Void visitCall(RexCall call)
visitCall
in interface RexVisitor<java.lang.Void>
visitCall
in class RexVisitorImpl<java.lang.Void>
private boolean isStrong(ImmutableBitSet exprArgs, RexNode call)
private boolean preserve(RexNode call)
public java.lang.Void visitInputRef(RexInputRef inputRef)
visitInputRef
in interface RexVisitor<java.lang.Void>
visitInputRef
in class RexVisitorImpl<java.lang.Void>
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.