OmniSciDB
a5dc49c757
|
#include <Analyzer.h>
Public Types | |
enum | WhichRow { kINPUT_OUTER, kINPUT_INNER, kOUTPUT, kGROUPBY } |
Public Member Functions | |
Var (const SQLTypeInfo &ti, const shared::ColumnKey &column_key, int32_t rte_idx, WhichRow o, int32_t v) | |
Var (const SQLTypeInfo &ti, WhichRow o, int32_t v) | |
which_row (o) | |
varno (v) | |
WhichRow | get_which_row () const |
void | set_which_row (WhichRow r) |
int32_t | get_varno () const |
void | set_varno (int32_t n) |
std::shared_ptr< Analyzer::Expr > | deep_copy () const override |
std::string | toString () const override |
void | check_group_by (const std::list< std::shared_ptr< Analyzer::Expr >> &groupby) const override |
void | collect_rte_idx (std::set< int32_t > &rte_idx_set) const override |
std::shared_ptr< Analyzer::Expr > | rewrite_with_targetlist (const std::vector< std::shared_ptr< TargetEntry >> &tlist) const override |
std::shared_ptr< Analyzer::Expr > | rewrite_with_child_targetlist (const std::vector< std::shared_ptr< TargetEntry >> &tlist) const override |
std::shared_ptr< Analyzer::Expr > | rewrite_agg_to_var (const std::vector< std::shared_ptr< TargetEntry >> &tlist) const override |
Public Member Functions inherited from Analyzer::ColumnVar | |
ColumnVar (const SQLTypeInfo &ti, const shared::ColumnKey &column_key, int32_t rte_idx) | |
const shared::ColumnKey & | getColumnKey () const |
shared::TableKey | getTableKey () const |
int32_t | get_rte_idx () const |
void | set_rte_idx (int32_t new_rte_idx) |
EncodingType | get_compression () const |
void | group_predicates (std::list< const Expr * > &scan_predicates, std::list< const Expr * > &join_predicates, std::list< const Expr * > &const_predicates) const override |
void | collect_rte_idx (std::set< int32_t > &rte_idx_set) const override |
void | collect_column_var (std::set< const ColumnVar *, bool(*)(const ColumnVar *, const ColumnVar *)> &colvar_set, bool include_agg) const override |
bool | operator== (const Expr &rhs) const override |
Public Member Functions inherited from Analyzer::Expr | |
Expr (SQLTypes t, bool notnull) | |
Expr (SQLTypes t, int d, bool notnull) | |
Expr (SQLTypes t, int d, int s, bool notnull) | |
Expr (const SQLTypeInfo &ti, bool has_agg=false) | |
virtual | ~Expr () |
std::shared_ptr< Analyzer::Expr > | get_shared_ptr () |
const SQLTypeInfo & | get_type_info () const |
void | set_type_info (const SQLTypeInfo &ti) |
bool | get_contains_agg () const |
void | set_contains_agg (bool a) |
virtual std::shared_ptr < Analyzer::Expr > | add_cast (const SQLTypeInfo &new_type_info) |
virtual std::shared_ptr < Analyzer::Expr > | normalize_simple_predicate (int &rte_idx) const |
virtual void | collect_rte_idx (std::set< int > &rte_idx_set) const |
virtual size_t | get_num_column_vars (const bool include_agg) const |
virtual void | print () const |
virtual void | add_unique (std::list< const Expr * > &expr_list) const |
virtual void | find_expr (std::function< bool(const Expr *)> f, std::list< const Expr * > &expr_list) const |
std::shared_ptr< Analyzer::Expr > | decompress () |
virtual void | get_domain (DomainSet &domain_set) const |
Private Attributes | |
WhichRow | which_row |
int32_t | varno |
Additional Inherited Members | |
Static Public Member Functions inherited from Analyzer::ColumnVar | |
static bool | colvar_comp (const ColumnVar *l, const ColumnVar *r) |
Protected Attributes inherited from Analyzer::ColumnVar | |
shared::ColumnKey | column_key_ |
int32_t | rte_idx_ |
Protected Attributes inherited from Analyzer::Expr | |
SQLTypeInfo | type_info |
bool | contains_agg |
Definition at line 275 of file Analyzer.h.
Enumerator | |
---|---|
kINPUT_OUTER | |
kINPUT_INNER | |
kOUTPUT | |
kGROUPBY |
Definition at line 277 of file Analyzer.h.
|
inline |
Definition at line 278 of file Analyzer.h.
|
inline |
Definition at line 284 of file Analyzer.h.
|
overridevirtual |
Reimplemented from Analyzer::ColumnVar.
Definition at line 1526 of file Analyzer.cpp.
References kGROUPBY, and which_row.
|
inlineoverride |
Definition at line 294 of file Analyzer.h.
|
overridevirtual |
Reimplemented from Analyzer::ColumnVar.
Definition at line 87 of file Analyzer.cpp.
References Analyzer::ColumnVar::column_key_, Analyzer::ColumnVar::rte_idx_, Analyzer::Expr::type_info, varno, and which_row.
Referenced by Parser::ColumnRef::analyze(), rewrite_with_child_targetlist(), rewrite_with_targetlist(), and DeepCopyVisitor::visitVar().
|
inline |
Definition at line 288 of file Analyzer.h.
References varno.
Referenced by Analyzer::ColumnVar::operator==(), anonymous_namespace{QueryMemoryDescriptor.cpp}::target_expr_group_by_indices(), and ScalarExprToSql::visitVar().
|
inline |
Definition at line 286 of file Analyzer.h.
References which_row.
Referenced by Parser::ColumnRef::analyze(), and Analyzer::ColumnVar::operator==().
|
overridevirtual |
Reimplemented from Analyzer::ColumnVar.
Definition at line 2026 of file Analyzer.cpp.
References Analyzer::Expr::get_type_info(), kINPUT_OUTER, and varno.
|
inlineoverridevirtual |
Reimplemented from Analyzer::ColumnVar.
Definition at line 301 of file Analyzer.h.
References deep_copy().
|
inlineoverridevirtual |
Reimplemented from Analyzer::ColumnVar.
Definition at line 297 of file Analyzer.h.
References deep_copy().
|
inline |
|
inline |
|
overridevirtual |
Reimplemented from Analyzer::ColumnVar.
Definition at line 2733 of file Analyzer.cpp.
References Analyzer::ColumnVar::column_key_, Analyzer::ColumnVar::rte_idx_, to_string(), varno, and which_row.
|
inline |
Definition at line 285 of file Analyzer.h.
Analyzer::Var::which_row | ( | o | ) |
|
private |
Definition at line 312 of file Analyzer.h.
Referenced by deep_copy(), get_varno(), rewrite_agg_to_var(), set_varno(), and toString().
|
private |
Definition at line 309 of file Analyzer.h.
Referenced by check_group_by(), deep_copy(), get_which_row(), set_which_row(), and toString().