OmniSciDB
c1a53651b2
|
#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 |
const std::string & | getName () const |
std::string | toString (RelRexToStringConfig config=RelRexToStringConfig::defaults()) const override |
size_t | toHash () const override |
![]() | |
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 |
![]() | |
virtual | ~Rex () |
Private Attributes | |
std::string | name_ |
Friends | |
struct | RelAlgDagSerializer |
Additional Inherited Members | |
![]() | |
SQLOps | op_ |
std::vector< std::unique_ptr < const RexScalar > > | operands_ |
SQLTypeInfo | type_ |
![]() | |
std::optional< size_t > | hash_ |
Definition at line 481 of file RelAlgDag.h.
using RexFunctionOperator::ConstRexScalarPtr = std::unique_ptr<const RexScalar> |
Definition at line 483 of file RelAlgDag.h.
using RexFunctionOperator::ConstRexScalarPtrVector = std::vector<ConstRexScalarPtr> |
Definition at line 484 of file RelAlgDag.h.
|
default |
|
inline |
Definition at line 489 of file RelAlgDag.h.
|
inlineoverridevirtual |
Reimplemented from RexOperator.
Definition at line 494 of file RelAlgDag.h.
References RexOperator::getType(), name_, and RexFunctionOperator().
|
inline |
Definition at line 500 of file RelAlgDag.h.
References name_.
Referenced by RelAlgTranslator::getQuantifiedRhs(), RexWindowFunctionOperator::toHash(), 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 511 of file RelAlgDag.h.
References RexOperator::getType(), Rex::hash_, name_, RexOperator::op_, RexOperator::operands_, RexFunctionOperator(), and toString().
|
inlineoverridevirtual |
Reimplemented from RexOperator.
Reimplemented in RexWindowFunctionOperator.
Definition at line 502 of file RelAlgDag.h.
References cat(), name_, RexOperator::operands_, and typeName().
Referenced by toHash(), and RelAlgTranslator::translateGeoProjection().
|
friend |
Definition at line 527 of file RelAlgDag.h.
|
private |
Definition at line 525 of file RelAlgDag.h.
Referenced by getDisambiguated(), getName(), toHash(), and toString().