OmniSciDB  a5dc49c757
 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 133 of file GeoIR.cpp.

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

Referenced by CodeGenerator::codegenGeoOperator().

134  {
135  auto comparator = Analyzer::ColumnVar::colvar_comp;
136  std::set<const Analyzer::ColumnVar*,
137  bool (*)(const Analyzer::ColumnVar*, const Analyzer::ColumnVar*)>
138  colvar_set(comparator);
139  geo_operator->collect_column_var(colvar_set, false);
140  std::for_each(colvar_set.begin(), colvar_set.end(), [&](const Analyzer::ColumnVar* cv) {
141  // we set `unmark_lazy_fetch` to be FALSE to restart the compilation step
142  // if we already generated a code for the expression used in this geo_oper as
143  // lazy-fetch
144  plan_state->addColumnToFetch(cv->getColumnKey(), false);
145  });
146 }
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:4174

+ Here is the call graph for this function:

+ Here is the caller graph for this function: