Class Analyzer::AggExpr

class AggExpr : public Analyzer::Expr

Public Functions

AggExpr(const SQLTypeInfo &ti, SQLAgg a, std::shared_ptr<Analyzer::Expr> g, bool d, std::shared_ptr<Analyzer::Constant> e)
AggExpr(SQLTypes t, SQLAgg a, Expr *g, bool d, std::shared_ptr<Analyzer::Constant> e, int idx)
SQLAgg get_aggtype() const
Expr *get_arg() const
std::shared_ptr<Analyzer::Expr> get_own_arg() const
bool get_is_distinct() const
std::shared_ptr<Analyzer::Constant> get_arg1() const
std::shared_ptr<Analyzer::Expr> deep_copy() const
void group_predicates(std::list<const Expr *> &scan_predicates, std::list<const Expr *> &join_predicates, std::list<const Expr *> &const_predicates) const
void collect_rte_idx(std::set<int> &rte_idx_set) const
void collect_column_var(std::set<const ColumnVar *, bool(*colvar_set)( const ColumnVar *, const ColumnVar *)>&, bool include_agg) const
std::shared_ptr<Analyzer::Expr> rewrite_with_targetlist(const std::vector<std::shared_ptr<TargetEntry>> &tlist) const
std::shared_ptr<Analyzer::Expr> rewrite_with_child_targetlist(const std::vector<std::shared_ptr<TargetEntry>> &tlist) const
std::shared_ptr<Analyzer::Expr> rewrite_agg_to_var(const std::vector<std::shared_ptr<TargetEntry>> &tlist) const
bool operator==(const Expr &rhs) const
std::string toString() const
void find_expr(bool (*f)(const Expr *), std::list<const Expr *> &expr_list, ) const

Private Members

SQLAgg aggtype
std::shared_ptr<Analyzer::Expr> arg
bool is_distinct
std::shared_ptr<Analyzer::Constant> arg1