OmniSciDB  a5dc49c757
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
anonymous_namespace{ScalarCodeGenerator.cpp}::UsedColumnExpressions Class Reference
+ Inheritance diagram for anonymous_namespace{ScalarCodeGenerator.cpp}::UsedColumnExpressions:
+ Collaboration diagram for anonymous_namespace{ScalarCodeGenerator.cpp}::UsedColumnExpressions:

Protected Member Functions

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

Additional Inherited Members

- Public Member Functions inherited from ScalarExprVisitor< ScalarCodeGenerator::ColumnMap >
ScalarCodeGenerator::ColumnMap visit (const Analyzer::Expr *expr) const
 

Detailed Description

Definition at line 22 of file ScalarCodeGenerator.cpp.

Member Function Documentation

ScalarCodeGenerator::ColumnMap anonymous_namespace{ScalarCodeGenerator.cpp}::UsedColumnExpressions::aggregateResult ( const ScalarCodeGenerator::ColumnMap aggregate,
const ScalarCodeGenerator::ColumnMap next_result 
) const
inlineoverrideprotectedvirtual

Reimplemented from ScalarExprVisitor< ScalarCodeGenerator::ColumnMap >.

Definition at line 37 of file ScalarCodeGenerator.cpp.

References run_benchmark_import::result.

39  {
40  auto result = aggregate;
41  result.insert(next_result.begin(), next_result.end());
42  return result;
43  }
ScalarCodeGenerator::ColumnMap anonymous_namespace{ScalarCodeGenerator.cpp}::UsedColumnExpressions::visitColumnVar ( const Analyzer::ColumnVar column) const
inlineoverrideprotectedvirtual

Reimplemented from ScalarExprVisitor< ScalarCodeGenerator::ColumnMap >.

Definition at line 24 of file ScalarCodeGenerator.cpp.

References Analyzer::ColumnVar::deep_copy(), Analyzer::ColumnVar::get_rte_idx(), and Analyzer::ColumnVar::getColumnKey().

25  {
27  const auto& column_key = column->getColumnKey();
28  InputColDescriptor input_desc(column_key.column_id,
29  column_key.table_id,
30  column_key.db_id,
31  column->get_rte_idx());
32  m.emplace(input_desc,
33  std::static_pointer_cast<Analyzer::ColumnVar>(column->deep_copy()));
34  return m;
35  }
std::shared_ptr< Analyzer::Expr > deep_copy() const override
Definition: Analyzer.cpp:66
std::unordered_map< InputColDescriptor, std::shared_ptr< Analyzer::ColumnVar >> ColumnMap
const shared::ColumnKey & getColumnKey() const
Definition: Analyzer.h:198
int32_t get_rte_idx() const
Definition: Analyzer.h:202

+ Here is the call graph for this function:


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