OmniSciDB
c0231cc57d
|
#include <RelAlgDag.h>
Public Member Functions | |
RelSort (const std::vector< SortField > &collation, const size_t limit, const size_t offset, std::shared_ptr< const RelAlgNode > input, bool limit_delivered) | |
bool | operator== (const RelSort &that) const |
size_t | collationCount () const |
SortField | getCollation (const size_t i) const |
void | setCollation (std::vector< SortField > &&collation) |
void | setEmptyResult (bool emptyResult) |
bool | isEmptyResult () const |
bool | isLimitDelivered () const |
size_t | getLimit () const |
size_t | getOffset () const |
std::string | toString (RelRexToStringConfig config=RelRexToStringConfig::defaults()) const override |
size_t | toHash () const override |
size_t | size () const override |
std::shared_ptr< RelAlgNode > | deepCopy () const override |
![]() | |
RelAlgNode (RelAlgInputs inputs={}) | |
virtual | ~RelAlgNode () |
void | resetQueryExecutionState () |
void | setContextData (const RaExecutionDesc *context_data) const |
void | setOutputMetainfo (const std::vector< TargetMetaInfo > &targets_metainfo) const |
void | setQueryPlanDag (const std::string &extracted_query_plan_dag) const |
std::string | getQueryPlanDag () const |
size_t | getQueryPlanDagHash () const |
const std::vector < TargetMetaInfo > & | getOutputMetainfo () const |
unsigned | getId () const |
void | setIdInPlanTree (size_t id) const |
std::optional< size_t > | getIdInPlanTree () const |
bool | hasContextData () const |
const RaExecutionDesc * | getContextData () const |
const size_t | inputCount () const |
const RelAlgNode * | getInput (const size_t idx) const |
std::shared_ptr< const RelAlgNode > | getAndOwnInput (const size_t idx) const |
void | addManagedInput (std::shared_ptr< const RelAlgNode > input) |
bool | hasInput (const RelAlgNode *needle) const |
virtual void | replaceInput (std::shared_ptr< const RelAlgNode > old_input, std::shared_ptr< const RelAlgNode > input) |
void | setRelNodeDagId (const size_t id) const |
size_t | getRelNodeDagId () const |
bool | isNop () const |
void | markAsNop () |
void | clearContextData () const |
Private Member Functions | |
bool | hasEquivCollationOf (const RelSort &that) const |
Private Attributes | |
std::vector< SortField > | collation_ |
const size_t | limit_ |
const size_t | offset_ |
bool | empty_result_ |
bool | limit_delivered_ |
Additional Inherited Members | |
![]() | |
static void | resetRelAlgFirstId () noexcept |
![]() | |
RelAlgInputs | inputs_ |
const unsigned | id_ |
std::optional< size_t > | id_in_plan_tree_ |
std::optional< size_t > | hash_ |
Definition at line 1796 of file RelAlgDag.h.
|
inline |
Definition at line 1798 of file RelAlgDag.h.
References RelAlgNode::inputs_.
Referenced by toHash().
|
inline |
Definition at line 1816 of file RelAlgDag.h.
References collation_.
Referenced by RelAlgExecutor::createSortInputWorkUnit(), RelAlgExecutor::executeSort(), and anonymous_namespace{RelAlgExecutor.cpp}::get_order_entries().
|
inlineoverridevirtual |
Implements RelAlgNode.
Definition at line 1886 of file RelAlgDag.h.
|
inline |
Definition at line 1818 of file RelAlgDag.h.
References CHECK_LT, and collation_.
Referenced by anonymous_namespace{RelAlgExecutor.cpp}::get_order_entries().
|
inline |
Definition at line 1833 of file RelAlgDag.h.
References limit_.
Referenced by RelAlgExecutor::createSortInputWorkUnit(), and RelAlgExecutor::executeSort().
|
inline |
Definition at line 1835 of file RelAlgDag.h.
References offset_.
Referenced by RelAlgExecutor::createSortInputWorkUnit(), and RelAlgExecutor::executeSort().
|
private |
Definition at line 779 of file RelAlgDag.cpp.
References collation_, and anonymous_namespace{RelAlgDag.cpp}::get_equiv_cols().
Referenced by operator==().
|
inline |
Definition at line 1829 of file RelAlgDag.h.
References empty_result_.
Referenced by RelAlgExecutor::executeSort().
|
inline |
Definition at line 1831 of file RelAlgDag.h.
References limit_delivered_.
Referenced by RelAlgExecutor::createSortInputWorkUnit().
|
inline |
Definition at line 1810 of file RelAlgDag.h.
References empty_result_, hasEquivCollationOf(), limit_, limit_delivered_, and offset_.
|
inline |
|
inline |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Implements RelAlgNode.
Definition at line 1865 of file RelAlgDag.h.
References collation_, empty_result_, RelAlgNode::hash_, RelAlgNode::inputs_, limit_, limit_delivered_, offset_, and RelSort().
|
inlineoverridevirtual |
Implements RelAlgNode.
Definition at line 1837 of file RelAlgDag.h.
References cat(), collation_, empty_result_, RelAlgNode::inputs_, limit_, limit_delivered_, offset_, to_string(), and typeName().
|
private |
Definition at line 1891 of file RelAlgDag.h.
Referenced by collationCount(), getCollation(), hasEquivCollationOf(), setCollation(), toHash(), and toString().
|
private |
Definition at line 1894 of file RelAlgDag.h.
Referenced by isEmptyResult(), operator==(), setEmptyResult(), toHash(), and toString().
|
private |
Definition at line 1892 of file RelAlgDag.h.
Referenced by getLimit(), operator==(), toHash(), and toString().
|
private |
Definition at line 1895 of file RelAlgDag.h.
Referenced by isLimitDelivered(), operator==(), toHash(), and toString().
|
private |
Definition at line 1893 of file RelAlgDag.h.
Referenced by getOffset(), operator==(), toHash(), and toString().