6 #ifndef TURI_SFRAME_QUERY_ENGINE_OPERATORS_QUERY_OPERATOR_HPP 7 #define TURI_SFRAME_QUERY_ENGINE_OPERATORS_QUERY_OPERATOR_HPP 12 #include <core/util/any.hpp> 13 #include <core/data/flexible_type/flexible_type.hpp> 14 #include <core/storage/query_engine/planning/planner_node.hpp> 15 #include <core/storage/query_engine/operators/operator_properties.hpp> 17 namespace query_eval {
99 virtual bool coro_running()
const = 0;
111 inline std::string
name()
const {
125 virtual std::shared_ptr<query_operator> clone()
const = 0;
137 return std::shared_ptr<query_operator>();
140 static std::string repr(std::shared_ptr<planner_node> pnode, pnode_tagger& get_tag) {
149 template <planner_node_type PType>
154 std::shared_ptr<query_operator> clone()
const {
170 #endif // TURI_SFRAME_QUERY_ENGINE_OPERATORS_QUERY_OPERATOR_HPP
query_operator_attributes attributes()
std::string planner_node_type_to_name(planner_node_type type)
int num_inputs
Number of inputs expected to the operator.
size_t attribute_bitfield
A bitfield of the attribute enum.
query_operator_attributes planner_node_type_to_attributes(planner_node_type type)
#define ASSERT_TRUE(cond)
virtual void execute(query_context &context)
static std::shared_ptr< query_operator > from_planner_node(std::shared_ptr< planner_node >)
virtual std::string print() const