Package org.apache.calcite.plan
Class RelTraitPropagationVisitor
- java.lang.Object
-
- org.apache.calcite.rel.RelVisitor
-
- org.apache.calcite.plan.RelTraitPropagationVisitor
-
public class RelTraitPropagationVisitor extends RelVisitor
RelTraitPropagationVisitor traverses a RelNode and its unregistered children, making sure that each has a full complement of traits. When a RelNode is found to be missing one or more traits, they are copied from a RelTraitSet given during construction.
-
-
Field Summary
Fields Modifier and Type Field Description private RelTraitSet
baseTraits
private RelOptPlanner
planner
-
Constructor Summary
Constructors Constructor Description RelTraitPropagationVisitor(RelOptPlanner planner, RelTraitSet baseTraits)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
visit(RelNode rel, int ordinal, RelNode parent)
Visits a node during a traversal.-
Methods inherited from class org.apache.calcite.rel.RelVisitor
go, replaceRoot
-
-
-
-
Field Detail
-
baseTraits
private final RelTraitSet baseTraits
-
planner
private final RelOptPlanner planner
-
-
Constructor Detail
-
RelTraitPropagationVisitor
public RelTraitPropagationVisitor(RelOptPlanner planner, RelTraitSet baseTraits)
-
-
Method Detail
-
visit
public void visit(RelNode rel, int ordinal, RelNode parent)
Description copied from class:RelVisitor
Visits a node during a traversal.- Overrides:
visit
in classRelVisitor
- Parameters:
rel
- Node to visitordinal
- Ordinal of node within its parentparent
- Parent of the node, or null if it is the root of the traversal
-
-