OmniSciDB  c0231cc57d
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RelAlgDagModifier Struct Reference

#include <RelAlgDag.h>

+ Inheritance diagram for RelAlgDagModifier:

Static Protected Member Functions

static std::vector
< std::shared_ptr< RelAlgNode > > & 
getNodes (RelAlgDag &rel_alg_dag)
 
static std::vector
< std::shared_ptr< RexSubQuery > > & 
getSubqueries (RelAlgDag &rel_alg_dag)
 
static std::unordered_map
< size_t, std::unordered_map
< unsigned,
RegisteredQueryHint > > & 
getQueryHints (RelAlgDag &rel_alg_dag)
 
static void setBuildState (RelAlgDag &rel_alg_dag, const RelAlgDag::BuildState build_state)
 

Detailed Description

A middle-layer class that can be inherited from to gain modify rights to a RelAlgDag class. This provides a way to access private members of the RelAlgDag class without dirtying its public interface with non-const accessors that may only apply for very specific classes. Only classes/structs that inherit from this middle-layer class will have modify rights.

Definition at line 2626 of file RelAlgDag.h.

Member Function Documentation

static std::vector<std::shared_ptr<RelAlgNode> >& RelAlgDagModifier::getNodes ( RelAlgDag rel_alg_dag)
inlinestaticprotected

Definition at line 2628 of file RelAlgDag.h.

References RelAlgDag::nodes_.

Referenced by RelAlgDagBuilder::build(), and RelAlgDagBuilder::optimizeDag().

2628  {
2629  return rel_alg_dag.nodes_;
2630  }
std::vector< std::shared_ptr< RelAlgNode > > nodes_
Definition: RelAlgDag.h:2607

+ Here is the caller graph for this function:

static std::unordered_map<size_t, std::unordered_map<unsigned, RegisteredQueryHint> >& RelAlgDagModifier::getQueryHints ( RelAlgDag rel_alg_dag)
inlinestaticprotected

Definition at line 2638 of file RelAlgDag.h.

References RelAlgDag::query_hint_.

Referenced by RelAlgDagBuilder::optimizeDag().

2638  {
2639  return rel_alg_dag.query_hint_;
2640  }
std::unordered_map< size_t, std::unordered_map< unsigned, RegisteredQueryHint > > query_hint_
Definition: RelAlgDag.h:2613

+ Here is the caller graph for this function:

static std::vector<std::shared_ptr<RexSubQuery> >& RelAlgDagModifier::getSubqueries ( RelAlgDag rel_alg_dag)
inlinestaticprotected

Definition at line 2632 of file RelAlgDag.h.

References RelAlgDag::subqueries_.

Referenced by RelAlgDagBuilder::optimizeDag().

2633  {
2634  return rel_alg_dag.subqueries_;
2635  }
std::vector< std::shared_ptr< RexSubQuery > > subqueries_
Definition: RelAlgDag.h:2608

+ Here is the caller graph for this function:

static void RelAlgDagModifier::setBuildState ( RelAlgDag rel_alg_dag,
const RelAlgDag::BuildState  build_state 
)
inlinestaticprotected

Definition at line 2642 of file RelAlgDag.h.

References RelAlgDag::build_state_.

Referenced by RelAlgDagBuilder::build(), and RelAlgDagBuilder::optimizeDag().

2643  {
2644  rel_alg_dag.build_state_ = build_state;
2645  }
BuildState build_state_
Definition: RelAlgDag.h:2605

+ Here is the caller graph for this function:


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