OmniSciDB
a5dc49c757
|
#include <RelAlgDag.h>
Public Member Functions | |
RexLiteral () | |
RexLiteral (const int64_t val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision) | |
RexLiteral (const double val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision) | |
RexLiteral (const std::string &val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision) | |
RexLiteral (const bool val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision) | |
RexLiteral (const SQLTypes target_type) | |
virtual void | acceptChildren (Visitor &v) const override |
virtual void | accept (Visitor &v, std::string name) const override |
template<class T > | |
T | getVal () const |
SQLTypes | getType () const |
SQLTypes | getTargetType () const |
unsigned | getScale () const |
unsigned | getPrecision () const |
unsigned | getTargetScale () const |
unsigned | getTargetPrecision () const |
std::string | toString (RelRexToStringConfig config=RelRexToStringConfig::defaults()) const override |
std::unique_ptr< RexLiteral > | deepCopy () const |
virtual size_t | toHash () const override |
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 | |
boost::variant< boost::blank, int64_t, double, std::string, bool > | literal_ |
SQLTypes | type_ |
SQLTypes | target_type_ |
unsigned | scale_ |
unsigned | precision_ |
unsigned | target_scale_ |
unsigned | target_precision_ |
Friends | |
struct | RelAlgDagSerializer |
std::size_t | hash_value (RexLiteral const &) |
Additional Inherited Members | |
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 193 of file RelAlgDag.h.
|
inline |
Definition at line 196 of file RelAlgDag.h.
|
inline |
Definition at line 199 of file RelAlgDag.h.
References CHECK, is_datetime(), kBIGINT, kDECIMAL, kINT, kINTERVAL_DAY_TIME, and kINTERVAL_YEAR_MONTH.
|
inline |
Definition at line 218 of file RelAlgDag.h.
References CHECK_EQ, and kDOUBLE.
|
inline |
Definition at line 235 of file RelAlgDag.h.
References CHECK_EQ, and kTEXT.
|
inline |
Definition at line 252 of file RelAlgDag.h.
References CHECK_EQ, and kBOOLEAN.
|
inline |
Definition at line 269 of file RelAlgDag.h.
|
inlineoverridevirtual |
Implements RelAlgDagNode.
Definition at line 279 of file RelAlgDag.h.
References RelAlgDagNode::acceptChildren(), and RelAlgDagNode::Visitor::visit().
Referenced by TableFunctionsFactory_node.PrintNode::__str__().
|
inlineoverridevirtual |
|
inline |
Definition at line 313 of file RelAlgDag.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 286 of file RelAlgDag.h.
References CHECK, and literal_.
|
inlineoverridevirtual |
Implements Rex.
Definition at line 317 of file RelAlgDag.h.
References hash_value().
|
inlineoverridevirtual |
Implements RelAlgDagNode.
Definition at line 304 of file RelAlgDag.h.
References literal_, precision_, scale_, target_precision_, target_scale_, target_type_, and type_.
|
friend |
Definition at line 3557 of file RelAlgDag.cpp.
|
friend |
Definition at line 330 of file RelAlgDag.h.
|
private |
Definition at line 322 of file RelAlgDag.h.
Referenced by getVal(), and toString().
|
private |
Definition at line 326 of file RelAlgDag.h.
Referenced by getPrecision(), and toString().
|
private |
Definition at line 325 of file RelAlgDag.h.
Referenced by getScale(), and toString().
|
private |
Definition at line 328 of file RelAlgDag.h.
Referenced by getTargetPrecision(), and toString().
|
private |
Definition at line 327 of file RelAlgDag.h.
Referenced by getTargetScale(), and toString().
|
private |
Definition at line 324 of file RelAlgDag.h.
Referenced by getTargetType(), and toString().
|
private |
Definition at line 323 of file RelAlgDag.h.
Referenced by getType(), and toString().