25typedef Node *(*replace_rte_variables_callback) (
Var *var,
47 List *src_rtable,
List *src_perminfos);
52 int sublevels_up,
bool change_RangeTblRef);
54 int min_sublevels_up);
56 int delta_sublevels_up,
int min_sublevels_up);
80 int target_varno,
int sublevels_up,
83 bool *outer_hasSubLinks);
88 int target_varno,
int sublevels_up,
89 const struct AttrMap *attno_map,
90 Oid to_rowtype,
bool *found_whole_row);
99 int target_varno,
int sublevels_up,
105 bool *outer_hasSubLinks);
bool contain_windowfuncs(Node *node)
void ChangeVarNodesExtended(Node *node, int rt_index, int new_index, int sublevels_up, bool change_RangeTblRef)
void IncrementVarSublevelsUp_rtable(List *rtable, int delta_sublevels_up, int min_sublevels_up)
void ChangeVarNodes(Node *node, int rt_index, int new_index, int sublevels_up)
Node * replace_rte_variables_mutator(Node *node, replace_rte_variables_context *context)
Relids adjust_relid_set(Relids relids, int oldrelid, int newrelid)
void OffsetVarNodes(Node *node, int offset, int sublevels_up)
bool checkExprHasSubLink(Node *node)
void CombineRangeTables(List **dst_rtable, List **dst_perminfos, List *src_rtable, List *src_perminfos)
void AddQual(Query *parsetree, Node *qual)
int locate_agg_of_level(Node *node, int levelsup)
Node *(* replace_rte_variables_callback)(Var *var, replace_rte_variables_context *context)
Node * add_nulling_relids(Node *node, const Bitmapset *target_relids, const Bitmapset *added_relids)
bool rangeTableEntry_used(Node *node, int rt_index, int sublevels_up)
bool contain_aggs_of_level(Node *node, int levelsup)
Query * getInsertSelectQuery(Query *parsetree, Query ***subquery_ptr)
int locate_windowfunc(Node *node)
Node * remove_nulling_relids(Node *node, const Bitmapset *removable_relids, const Bitmapset *except_relids)
void AddInvertedQual(Query *parsetree, Node *qual)
Node * replace_rte_variables(Node *node, int target_varno, int sublevels_up, replace_rte_variables_callback callback, void *callback_arg, bool *outer_hasSubLinks)
@ REPLACEVARS_SUBSTITUTE_NULL
@ REPLACEVARS_CHANGE_VARNO
@ REPLACEVARS_REPORT_ERROR
Node * ReplaceVarFromTargetList(Var *var, RangeTblEntry *target_rte, List *targetlist, int result_relation, ReplaceVarsNoMatchOption nomatch_option, int nomatch_varno)
void IncrementVarSublevelsUp(Node *node, int delta_sublevels_up, int min_sublevels_up)
Node * ReplaceVarsFromTargetList(Node *node, int target_varno, int sublevels_up, RangeTblEntry *target_rte, List *targetlist, int result_relation, ReplaceVarsNoMatchOption nomatch_option, int nomatch_varno, bool *outer_hasSubLinks)
Node * map_variable_attnos(Node *node, int target_varno, int sublevels_up, const struct AttrMap *attno_map, Oid to_rowtype, bool *found_whole_row)
replace_rte_variables_callback callback
static void callback(struct sockaddr *addr, struct sockaddr *mask, void *unused)