#include <RelAlgDag.h>
Definition at line 1863 of file RelAlgDag.h.
RelFilter::RelFilter |
( |
std::unique_ptr< const RexScalar > & |
filter, |
|
|
std::shared_ptr< const RelAlgNode > |
input |
|
) |
| |
|
inline |
RelFilter::RelFilter |
( |
std::unique_ptr< const RexScalar > & |
filter | ) |
|
|
inline |
RelFilter::RelFilter |
( |
RelFilter const & |
rhs | ) |
|
virtual void RelFilter::accept |
( |
Visitor & |
v, |
|
|
std::string |
name |
|
) |
| const |
|
inlineoverridevirtual |
virtual void RelFilter::acceptChildren |
( |
Visitor & |
v | ) |
const |
|
inlineoverridevirtual |
std::shared_ptr<RelAlgNode> RelFilter::deepCopy |
( |
| ) |
const |
|
inlineoverridevirtual |
const RexScalar* RelFilter::getAndReleaseCondition |
( |
| ) |
|
|
inline |
const RexScalar* RelFilter::getCondition |
( |
| ) |
const |
|
inline |
void RelFilter::replaceInput |
( |
std::shared_ptr< const RelAlgNode > |
old_input, |
|
|
std::shared_ptr< const RelAlgNode > |
input |
|
) |
| |
|
overridevirtual |
Reimplemented from RelAlgNode.
Definition at line 537 of file RelAlgDag.cpp.
References filter_, and RelAlgNode::replaceInput().
540 RexRebindInputsVisitor rebind_inputs(old_input.get(), input.get());
541 rebind_inputs.visit(
filter_.get());
std::unique_ptr< const RexScalar > filter_
virtual void replaceInput(std::shared_ptr< const RelAlgNode > old_input, std::shared_ptr< const RelAlgNode > input)
void RelFilter::setCondition |
( |
std::unique_ptr< const RexScalar > & |
condition | ) |
|
|
inline |
size_t RelFilter::size |
( |
| ) |
const |
|
inlineoverridevirtual |
virtual size_t RelFilter::toHash |
( |
| ) |
const |
|
inlineoverridevirtual |
Implements RelAlgNode.
Definition at line 1912 of file RelAlgDag.h.
References cat(), filter_, RelAlgNode::inputs_, to_string(), and typeName().
1920 ret +=
", input node id={";
1922 auto node_id_in_plan = input->getIdInPlanTree();
1923 auto node_id_str = node_id_in_plan ?
std::to_string(*node_id_in_plan)
1925 ret += node_id_str +
" ";
1929 return cat(ret,
")");
std::unique_ptr< const RexScalar > filter_
std::string typeName(const T *v)
std::string toString(RelRexToStringConfig config=RelRexToStringConfig::defaults()) const override
std::size_t hash_value |
( |
RelFilter const & |
rel_filter | ) |
|
|
friend |
Definition at line 3753 of file RelAlgDag.cpp.
Referenced by toHash().
3754 if (rel_filter.hash_) {
3755 return *rel_filter.hash_;
3757 rel_filter.hash_ =
typeid(
RelFilter).hash_code();
3758 boost::hash_combine(*rel_filter.hash_, rel_filter.filter_);
3759 boost::hash_combine(*rel_filter.hash_, rel_filter.inputs_);
3760 return *rel_filter.hash_;
std::unique_ptr<const RexScalar> RelFilter::filter_ |
|
private |
The documentation for this class was generated from the following files:
- /home/jenkins-slave/workspace/core-os-doxygen/QueryEngine/RelAlgDag.h
- /home/jenkins-slave/workspace/core-os-doxygen/QueryEngine/RelAlgDag.cpp