OmniSciDB  72c90bc290
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
anonymous_namespace{GeoIR.cpp} Namespace Reference

Functions

void mark_logical_column_to_fetch (const Analyzer::GeoOperator *geo_operator, PlanState *plan_state)
 

Function Documentation

void anonymous_namespace{GeoIR.cpp}::mark_logical_column_to_fetch ( const Analyzer::GeoOperator geo_operator,
PlanState plan_state 
)

Definition at line 131 of file GeoIR.cpp.

References PlanState::addColumnToFetch(), Analyzer::GeoOperator::collect_column_var(), and Analyzer::ColumnVar::colvar_comp().

Referenced by CodeGenerator::codegenGeoOperator().

132  {
133  auto comparator = Analyzer::ColumnVar::colvar_comp;
134  std::set<const Analyzer::ColumnVar*,
135  bool (*)(const Analyzer::ColumnVar*, const Analyzer::ColumnVar*)>
136  colvar_set(comparator);
137  geo_operator->collect_column_var(colvar_set, false);
138  std::for_each(colvar_set.begin(), colvar_set.end(), [&](const Analyzer::ColumnVar* cv) {
139  // we set `unmark_lazy_fetch` to be FALSE to restart the compilation step
140  // if we already generated a code for the expression used in this geo_oper as
141  // lazy-fetch
142  plan_state->addColumnToFetch(cv->getColumnKey(), false);
143  });
144 }
static bool colvar_comp(const ColumnVar *l, const ColumnVar *r)
Definition: Analyzer.h:215
void addColumnToFetch(const shared::ColumnKey &column_key, bool unmark_lazy_fetch=false)
Definition: PlanState.cpp:124
void collect_column_var(std::set< const ColumnVar *, bool(*)(const ColumnVar *, const ColumnVar *)> &colvar_set, bool include_agg) const final
Definition: Analyzer.cpp:4145

+ Here is the call graph for this function:

+ Here is the caller graph for this function: