OmniSciDB  c07336695a
anonymous_namespace{JoinFilterPushDown.cpp}::CollectInputColumnsVisitor Class Reference
+ Inheritance diagram for anonymous_namespace{JoinFilterPushDown.cpp}::CollectInputColumnsVisitor:
+ Collaboration diagram for anonymous_namespace{JoinFilterPushDown.cpp}::CollectInputColumnsVisitor:

Public Member Functions

std::unordered_set< InputColDescriptoraggregateResult (const std::unordered_set< InputColDescriptor > &aggregate, const std::unordered_set< InputColDescriptor > &next_result) const override
 
- Public Member Functions inherited from ScalarExprVisitor< std::unordered_set< InputColDescriptor > >
std::unordered_set< InputColDescriptorvisit (const Analyzer::Expr *expr) const
 

Private Member Functions

std::unordered_set< InputColDescriptorvisitColumnVar (const Analyzer::ColumnVar *col_var) const override
 

Additional Inherited Members

- Protected Member Functions inherited from ScalarExprVisitor< std::unordered_set< InputColDescriptor > >
virtual std::unordered_set< InputColDescriptorvisitVar (const Analyzer::Var *) const
 
virtual std::unordered_set< InputColDescriptorvisitColumnVarTuple (const Analyzer::ExpressionTuple *) const
 
virtual std::unordered_set< InputColDescriptorvisitConstant (const Analyzer::Constant *) const
 
virtual std::unordered_set< InputColDescriptorvisitUOper (const Analyzer::UOper *uoper) const
 
virtual std::unordered_set< InputColDescriptorvisitBinOper (const Analyzer::BinOper *bin_oper) const
 
virtual std::unordered_set< InputColDescriptorvisitInValues (const Analyzer::InValues *in_values) const
 
virtual std::unordered_set< InputColDescriptorvisitInIntegerSet (const Analyzer::InIntegerSet *in_integer_set) const
 
virtual std::unordered_set< InputColDescriptorvisitCharLength (const Analyzer::CharLengthExpr *char_length) const
 
virtual std::unordered_set< InputColDescriptorvisitKeyForString (const Analyzer::KeyForStringExpr *key_for_string) const
 
virtual std::unordered_set< InputColDescriptorvisitCardinality (const Analyzer::CardinalityExpr *cardinality) const
 
virtual std::unordered_set< InputColDescriptorvisitLikeExpr (const Analyzer::LikeExpr *like) const
 
virtual std::unordered_set< InputColDescriptorvisitRegexpExpr (const Analyzer::RegexpExpr *regexp) const
 
virtual std::unordered_set< InputColDescriptorvisitCaseExpr (const Analyzer::CaseExpr *case_) const
 
virtual std::unordered_set< InputColDescriptorvisitDatetruncExpr (const Analyzer::DatetruncExpr *datetrunc) const
 
virtual std::unordered_set< InputColDescriptorvisitExtractExpr (const Analyzer::ExtractExpr *extract) const
 
virtual std::unordered_set< InputColDescriptorvisitFunctionOperWithCustomTypeHandling (const Analyzer::FunctionOperWithCustomTypeHandling *func_oper) const
 
virtual std::unordered_set< InputColDescriptorvisitArrayOper (Analyzer::ArrayExpr const *array_expr) const
 
virtual std::unordered_set< InputColDescriptorvisitFunctionOper (const Analyzer::FunctionOper *func_oper) const
 
virtual std::unordered_set< InputColDescriptorvisitWindowFunction (const Analyzer::WindowFunction *window_func) const
 
virtual std::unordered_set< InputColDescriptorvisitDatediffExpr (const Analyzer::DatediffExpr *datediff) const
 
virtual std::unordered_set< InputColDescriptorvisitDateaddExpr (const Analyzer::DateaddExpr *dateadd) const
 
virtual std::unordered_set< InputColDescriptorvisitLikelihood (const Analyzer::LikelihoodExpr *likelihood) const
 
virtual std::unordered_set< InputColDescriptorvisitOffsetInFragment (const Analyzer::OffsetInFragment *) const
 
virtual std::unordered_set< InputColDescriptorvisitAggExpr (const Analyzer::AggExpr *agg) const
 
virtual std::unordered_set< InputColDescriptordefaultResult () const
 

Detailed Description

Definition at line 31 of file JoinFilterPushDown.cpp.

Member Function Documentation

◆ aggregateResult()

std::unordered_set<InputColDescriptor> anonymous_namespace{JoinFilterPushDown.cpp}::CollectInputColumnsVisitor::aggregateResult ( const std::unordered_set< InputColDescriptor > &  aggregate,
const std::unordered_set< InputColDescriptor > &  next_result 
) const
inlineoverridevirtual

Reimplemented from ScalarExprVisitor< std::unordered_set< InputColDescriptor > >.

Definition at line 39 of file JoinFilterPushDown.cpp.

References run-benchmark-import::result.

41  {
42  auto result = aggregate;
43  result.insert(next_result.begin(), next_result.end());
44  return result;
45  }

◆ visitColumnVar()

std::unordered_set<InputColDescriptor> anonymous_namespace{JoinFilterPushDown.cpp}::CollectInputColumnsVisitor::visitColumnVar ( const Analyzer::ColumnVar col_var) const
inlineoverrideprivatevirtual

Reimplemented from ScalarExprVisitor< std::unordered_set< InputColDescriptor > >.

Definition at line 33 of file JoinFilterPushDown.cpp.

References Analyzer::ColumnVar::get_column_id(), and Analyzer::ColumnVar::get_table_id().

34  {
35  return {InputColDescriptor(col_var->get_column_id(), col_var->get_table_id(), 0)};
36  }
int get_column_id() const
Definition: Analyzer.h:194
int get_table_id() const
Definition: Analyzer.h:193
+ Here is the call graph for this function:

The documentation for this class was generated from the following file: