Class anonymous_namespace{RelAlgDagBuilder.cpp}::RexWindowFuncReplacementVisitorΒΆ
- class
Replaces the first occurrence of a WindowFunctionOperator rex with the provided
replacement_rex
. Typically used for splitting a complex rex into two simpler rexes, and forwarding one of the rexes to a later node. The forwarded rex is then replaced with a RexInput using this visitor. Note that for window function replacement, the overloads in this visitor must match the overloads in the detection visitor above, to ensure a detected window function expression is properly replaced.Public Functions
-
anonymous_namespace{RelAlgDagBuilder.cpp}::RexWindowFuncReplacementVisitor::RexWindowFuncReplacementVisitor(std::unique_ptr< const RexScalar > replacement_rex)
-
anonymous_namespace{RelAlgDagBuilder.cpp}::RexWindowFuncReplacementVisitor::~RexWindowFuncReplacementVisitor()
Protected Functions
-
RetType anonymous_namespace{RelAlgDagBuilder.cpp}::RexWindowFuncReplacementVisitor::visitOperator(const RexOperator * rex_operator) const
-
RetType anonymous_namespace{RelAlgDagBuilder.cpp}::RexWindowFuncReplacementVisitor::visitCase(const RexCase * rex_case) const
Private Functions
-
bool anonymous_namespace{RelAlgDagBuilder.cpp}::RexWindowFuncReplacementVisitor::should_replace_operand(const RexScalar * rex) const
Private Members
-
std::unique_ptr<const RexScalar> anonymous_namespace{RelAlgDagBuilder.cpp}::RexWindowFuncReplacementVisitor::replacement_rex_
-