Class details::RelAlgDispatcher¶
-
class
RelAlgDispatcher¶ Public Functions
-
std::vector<std::shared_ptr<RelAlgNode>>
run(const rapidjson::Value &rels, RelAlgDagBuilder &root_dag_builder)¶
Private Functions
-
std::shared_ptr<RelProject>
dispatchProject(const rapidjson::Value &proj_ra, RelAlgDagBuilder &root_dag_builder)¶
-
std::shared_ptr<RelFilter>
dispatchFilter(const rapidjson::Value &filter_ra, RelAlgDagBuilder &root_dag_builder)¶
-
std::shared_ptr<RelAggregate>
dispatchAggregate(const rapidjson::Value &agg_ra)¶
-
std::shared_ptr<RelJoin>
dispatchJoin(const rapidjson::Value &join_ra, RelAlgDagBuilder &root_dag_builder)¶
-
std::shared_ptr<RelTableFunction>
dispatchTableFunction(const rapidjson::Value &table_func_ra, RelAlgDagBuilder &root_dag_builder)¶
-
std::shared_ptr<RelLogicalValues>
dispatchLogicalValues(const rapidjson::Value &logical_values_ra)¶
-
std::shared_ptr<RelLogicalUnion>
dispatchUnion(const rapidjson::Value &logical_union_ra)¶
-
RelAlgInputs
getRelAlgInputs(const rapidjson::Value &node)¶
-
std::pair<std::string, std::string>
getKVOptionPair(std::string &str, size_t &pos)¶
-
ExplainedQueryHint
parseHintString(std::string &hint_string)¶
-
std::shared_ptr<const RelAlgNode>
prev(const rapidjson::Value &crt_node)¶
Private Members
-
std::vector<std::shared_ptr<RelAlgNode>>
nodes_¶
-
std::vector<std::shared_ptr<RelAlgNode>>