OmniSciDB
a5dc49c757
|
#include <RelAlgDag.h>
Public Types | |
using | ConstRexScalarPtr = std::unique_ptr< const RexScalar > |
using | ConstRexScalarPtrVector = std::vector< ConstRexScalarPtr > |
Public Member Functions | |
RexFunctionOperator ()=default | |
RexFunctionOperator (const std::string &name, ConstRexScalarPtrVector &operands, const SQLTypeInfo &ti) | |
std::unique_ptr< const RexOperator > | getDisambiguated (std::vector< std::unique_ptr< const RexScalar >> &operands) const override |
virtual void | acceptChildren (Visitor &v) const override |
virtual void | accept (Visitor &v, std::string name) const override |
const std::string & | getName () const |
std::string | toString (RelRexToStringConfig config=RelRexToStringConfig::defaults()) const override |
virtual size_t | toHash () const override |
Public Member Functions inherited from RexOperator | |
RexOperator () | |
RexOperator (const SQLOps op, std::vector< std::unique_ptr< const RexScalar >> &operands, const SQLTypeInfo &type) | |
size_t | size () const |
const RexScalar * | getOperand (const size_t idx) const |
const RexScalar * | getOperandAndRelease (const size_t idx) const |
SQLOps | getOperator () const |
const SQLTypeInfo & | getType () const |
Public Member Functions inherited from Rex | |
virtual | ~Rex () |
virtual size_t | getStepNumber () const |
Public Member Functions inherited from RelAlgDagNode | |
RelAlgDagNode () | |
virtual void | setStepNumber (size_t step) const |
std::optional< size_t > | getIdInPlanTree () const |
void | setIdInPlanTree (size_t id) const |
Private Attributes | |
std::string | name_ |
Friends | |
struct | RelAlgDagSerializer |
std::size_t | hash_value (RexFunctionOperator const &) |
Additional Inherited Members | |
Protected Attributes inherited from RexOperator | |
SQLOps | op_ |
std::vector< std::unique_ptr < const RexScalar > > | operands_ |
SQLTypeInfo | type_ |
Protected Attributes inherited from Rex | |
std::optional< size_t > | hash_ |
Protected Attributes inherited from RelAlgDagNode | |
size_t | step_ {0} |
std::optional< size_t > | id_in_plan_tree_ |
Definition at line 474 of file RelAlgDag.h.
using RexFunctionOperator::ConstRexScalarPtr = std::unique_ptr<const RexScalar> |
Definition at line 476 of file RelAlgDag.h.
using RexFunctionOperator::ConstRexScalarPtrVector = std::vector<ConstRexScalarPtr> |
Definition at line 477 of file RelAlgDag.h.
|
default |
|
inline |
Definition at line 482 of file RelAlgDag.h.
|
inlineoverridevirtual |
Reimplemented from RexOperator.
Reimplemented in RexWindowFunctionOperator.
Definition at line 500 of file RelAlgDag.h.
References acceptChildren(), and RelAlgDagNode::Visitor::visit().
Referenced by TableFunctionsFactory_node.PrintNode::__str__().
|
inlineoverridevirtual |
Reimplemented from RexOperator.
Reimplemented in RexWindowFunctionOperator.
Definition at line 493 of file RelAlgDag.h.
References RelAlgDagNode::accept(), RexOperator::getOperand(), and RexOperator::size().
Referenced by accept().
|
inlineoverridevirtual |
Reimplemented from RexOperator.
Definition at line 487 of file RelAlgDag.h.
References RexOperator::getType(), name_, and RexFunctionOperator().
|
inline |
Definition at line 506 of file RelAlgDag.h.
References name_.
Referenced by RelAlgTranslator::getQuantifiedRhs(), hash_value(), RexWindowFunctionOperator::toString(), RelAlgTranslator::translateBinaryGeoConstructor(), RelAlgTranslator::translateBinaryGeoFunction(), RelAlgTranslator::translateBinaryGeoPredicate(), RelAlgTranslator::translateCardinality(), RelAlgTranslator::translateExtract(), RelAlgTranslator::translateFunction(), RelAlgTranslator::translateFunctionWithGeoArg(), RelAlgTranslator::translateGeoProjection(), RelAlgTranslator::translateKeyForString(), RelAlgTranslator::translateLength(), RelAlgTranslator::translateLike(), RelAlgTranslator::translateStringOper(), RelAlgTranslator::translateTernaryGeoFunction(), RelAlgTranslator::translateUnaryGeoConstructor(), RelAlgTranslator::translateUnaryGeoFunction(), RelAlgTranslator::translateUnaryGeoPredicate(), and QueryPlanDagChecker::visit().
|
inlineoverridevirtual |
Reimplemented from RexOperator.
Reimplemented in RexWindowFunctionOperator.
Definition at line 521 of file RelAlgDag.h.
References hash_value.
|
inlineoverridevirtual |
Reimplemented from RexOperator.
Reimplemented in RexWindowFunctionOperator.
Definition at line 508 of file RelAlgDag.h.
References cat(), name_, RexOperator::operands_, and typeName().
Referenced by RelAlgTranslator::translateGeoProjection().
|
friend |
Definition at line 3602 of file RelAlgDag.cpp.
Referenced by toHash().
|
friend |
Definition at line 528 of file RelAlgDag.h.
|
private |
Definition at line 526 of file RelAlgDag.h.
Referenced by getDisambiguated(), getName(), hash_value(), and toString().