OmniSciDB  72c90bc290
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UsedColumnsVisitor Class Reference

#include <UsedColumnsVisitor.h>

+ Inheritance diagram for UsedColumnsVisitor:
+ Collaboration diagram for UsedColumnsVisitor:

Protected Member Functions

std::unordered_set
< shared::ColumnKey
visitColumnVar (const Analyzer::ColumnVar *column) const override
 
std::unordered_set
< shared::ColumnKey
aggregateResult (const std::unordered_set< shared::ColumnKey > &aggregate, const std::unordered_set< shared::ColumnKey > &next_result) const override
 
- Protected Member Functions inherited from ScalarExprVisitor< std::unordered_set< shared::ColumnKey > >
virtual std::unordered_set
< shared::ColumnKey
visitVar (const Analyzer::Var *) const
 
virtual std::unordered_set
< shared::ColumnKey
visitColumnVarTuple (const Analyzer::ExpressionTuple *) const
 
virtual std::unordered_set
< shared::ColumnKey
visitConstant (const Analyzer::Constant *) const
 
virtual std::unordered_set
< shared::ColumnKey
visitUOper (const Analyzer::UOper *uoper) const
 
virtual std::unordered_set
< shared::ColumnKey
visitBinOper (const Analyzer::BinOper *bin_oper) const
 
virtual std::unordered_set
< shared::ColumnKey
visitGeoExpr (const Analyzer::GeoExpr *geo_expr) const
 
virtual std::unordered_set
< shared::ColumnKey
visitInValues (const Analyzer::InValues *in_values) const
 
virtual std::unordered_set
< shared::ColumnKey
visitInIntegerSet (const Analyzer::InIntegerSet *in_integer_set) const
 
virtual std::unordered_set
< shared::ColumnKey
visitCharLength (const Analyzer::CharLengthExpr *char_length) const
 
virtual std::unordered_set
< shared::ColumnKey
visitKeyForString (const Analyzer::KeyForStringExpr *key_for_string) const
 
virtual std::unordered_set
< shared::ColumnKey
visitSampleRatio (const Analyzer::SampleRatioExpr *sample_ratio) const
 
virtual std::unordered_set
< shared::ColumnKey
visitStringOper (const Analyzer::StringOper *string_oper) const
 
virtual std::unordered_set
< shared::ColumnKey
visitCardinality (const Analyzer::CardinalityExpr *cardinality) const
 
virtual std::unordered_set
< shared::ColumnKey
visitLikeExpr (const Analyzer::LikeExpr *like) const
 
virtual std::unordered_set
< shared::ColumnKey
visitRegexpExpr (const Analyzer::RegexpExpr *regexp) const
 
virtual std::unordered_set
< shared::ColumnKey
visitWidthBucket (const Analyzer::WidthBucketExpr *width_bucket_expr) const
 
virtual std::unordered_set
< shared::ColumnKey
visitMLPredict (const Analyzer::MLPredictExpr *ml_predict_expr) const
 
virtual std::unordered_set
< shared::ColumnKey
visitPCAProject (const Analyzer::PCAProjectExpr *pca_project_expr) const
 
virtual std::unordered_set
< shared::ColumnKey
visitCaseExpr (const Analyzer::CaseExpr *case_) const
 
virtual std::unordered_set
< shared::ColumnKey
visitDatetruncExpr (const Analyzer::DatetruncExpr *datetrunc) const
 
virtual std::unordered_set
< shared::ColumnKey
visitExtractExpr (const Analyzer::ExtractExpr *extract) const
 
virtual std::unordered_set
< shared::ColumnKey
visitFunctionOperWithCustomTypeHandling (const Analyzer::FunctionOperWithCustomTypeHandling *func_oper) const
 
virtual std::unordered_set
< shared::ColumnKey
visitArrayOper (Analyzer::ArrayExpr const *array_expr) const
 
virtual std::unordered_set
< shared::ColumnKey
visitGeoUOper (const Analyzer::GeoUOper *geo_expr) const
 
virtual std::unordered_set
< shared::ColumnKey
visitGeoBinOper (const Analyzer::GeoBinOper *geo_expr) const
 
virtual std::unordered_set
< shared::ColumnKey
visitFunctionOper (const Analyzer::FunctionOper *func_oper) const
 
virtual std::unordered_set
< shared::ColumnKey
visitWindowFunction (const Analyzer::WindowFunction *window_func) const
 
virtual std::unordered_set
< shared::ColumnKey
visitDatediffExpr (const Analyzer::DatediffExpr *datediff) const
 
virtual std::unordered_set
< shared::ColumnKey
visitDateaddExpr (const Analyzer::DateaddExpr *dateadd) const
 
virtual std::unordered_set
< shared::ColumnKey
visitLikelihood (const Analyzer::LikelihoodExpr *likelihood) const
 
virtual std::unordered_set
< shared::ColumnKey
visitOffsetInFragment (const Analyzer::OffsetInFragment *) const
 
virtual std::unordered_set
< shared::ColumnKey
visitAggExpr (const Analyzer::AggExpr *agg) const
 
virtual std::unordered_set
< shared::ColumnKey
visitRangeJoinOper (const Analyzer::RangeOper *range_oper) const
 
virtual void visitBegin () const
 
virtual std::unordered_set
< shared::ColumnKey
defaultResult () const
 

Additional Inherited Members

- Public Member Functions inherited from ScalarExprVisitor< std::unordered_set< shared::ColumnKey > >
std::unordered_set
< shared::ColumnKey
visit (const Analyzer::Expr *expr) const
 

Detailed Description

Definition at line 22 of file UsedColumnsVisitor.h.

Member Function Documentation

std::unordered_set<shared::ColumnKey> UsedColumnsVisitor::aggregateResult ( const std::unordered_set< shared::ColumnKey > &  aggregate,
const std::unordered_set< shared::ColumnKey > &  next_result 
) const
inlineoverrideprotectedvirtual

Reimplemented from ScalarExprVisitor< std::unordered_set< shared::ColumnKey > >.

Definition at line 30 of file UsedColumnsVisitor.h.

References run_benchmark_import::result.

32  {
33  auto result = aggregate;
34  result.insert(next_result.begin(), next_result.end());
35  return result;
36  }
std::unordered_set<shared::ColumnKey> UsedColumnsVisitor::visitColumnVar ( const Analyzer::ColumnVar column) const
inlineoverrideprotectedvirtual

Reimplemented from ScalarExprVisitor< std::unordered_set< shared::ColumnKey > >.

Definition at line 25 of file UsedColumnsVisitor.h.

References Analyzer::ColumnVar::getColumnKey().

26  {
27  return {column->getColumnKey()};
28  }
const shared::ColumnKey & getColumnKey() const
Definition: Analyzer.h:198

+ Here is the call graph for this function:


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