OmniSciDB  72c90bc290
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor Class Reference
+ Inheritance diagram for anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor:
+ Collaboration diagram for anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor:

Public Types

using TableKeys = std::unordered_set< shared::TableKey >
 

Static Public Member Functions

static TableKeys getTableIds (RelAlgNode const *node)
 

Private Member Functions

void visit (RelScan const *scan) override
 
void visit (RelLogicalValues const *) override
 

Private Attributes

TableKeys table_ids_
 

Additional Inherited Members

- Public Member Functions inherited from RelRexDagVisitor
virtual ~RelRexDagVisitor ()=default
 
virtual void visit (RelAlgNode const *)
 
virtual void visit (RexScalar const *)
 
- Protected Member Functions inherited from RelRexDagVisitor
virtual void visit (RelAggregate const *)
 
virtual void visit (RelCompound const *)
 
virtual void visit (RelFilter const *)
 
virtual void visit (RelJoin const *)
 
virtual void visit (RelLeftDeepInnerJoin const *)
 
virtual void visit (RelLogicalUnion const *)
 
virtual void visit (RelModify const *)
 
virtual void visit (RelProject const *)
 
virtual void visit (RelSort const *)
 
virtual void visit (RelTableFunction const *)
 
virtual void visit (RelTranslatedJoin const *)
 
virtual void visit (RexAbstractInput const *)
 
virtual void visit (RexCase const *)
 
virtual void visit (RexFunctionOperator const *)
 
virtual void visit (RexInput const *)
 
virtual void visit (RexLiteral const *)
 
virtual void visit (RexOperator const *)
 
virtual void visit (RexRef const *)
 
virtual void visit (RexSubQuery const *)
 
virtual void visit (RexWindowFunctionOperator const *)
 
void castAndVisit (RelAlgNode const *)
 

Detailed Description

Definition at line 190 of file QueryPhysicalInputsCollector.cpp.

Member Typedef Documentation

using anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor::TableKeys = std::unordered_set<shared::TableKey>

Definition at line 193 of file QueryPhysicalInputsCollector.cpp.

Member Function Documentation

static TableKeys anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor::getTableIds ( RelAlgNode const *  node)
inlinestatic

Definition at line 195 of file QueryPhysicalInputsCollector.cpp.

References table_ids_, and visit().

195  {
196  RelAlgPhysicalTableInputsVisitor visitor;
197  visitor.visit(node);
198  return std::move(visitor.table_ids_);
199  }

+ Here is the call graph for this function:

void anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor::visit ( RelScan const *  scan)
inlineoverrideprivatevirtual

Reimplemented from RelRexDagVisitor.

Definition at line 204 of file QueryPhysicalInputsCollector.cpp.

References RelScan::getCatalog(), Catalog_Namespace::Catalog::getDatabaseId(), RelScan::getTableDescriptor(), and TableDescriptor::tableId.

Referenced by getTableIds().

204  {
205  table_ids_.insert(
206  {scan->getCatalog().getDatabaseId(), scan->getTableDescriptor()->tableId});
207  }

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor::visit ( RelLogicalValues const *  )
inlineoverrideprivatevirtual

Reimplemented from RelRexDagVisitor.

Definition at line 211 of file QueryPhysicalInputsCollector.cpp.

211 {}

Member Data Documentation

TableKeys anonymous_namespace{QueryPhysicalInputsCollector.cpp}::RelAlgPhysicalTableInputsVisitor::table_ids_
private

Definition at line 202 of file QueryPhysicalInputsCollector.cpp.

Referenced by getTableIds().


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