PostgreSQL Source Code
git master
|
#include "postgres.h"
#include "access/table.h"
#include "nodes/makefuncs.h"
#include "optimizer/appendinfo.h"
#include "optimizer/optimizer.h"
#include "optimizer/prep.h"
#include "optimizer/tlist.h"
#include "parser/parse_coerce.h"
#include "parser/parsetree.h"
#include "utils/rel.h"
Go to the source code of this file.
Functions | |
static List * | expand_insert_targetlist (List *tlist, Relation rel) |
void | preprocess_targetlist (PlannerInfo *root) |
List * | extract_update_targetlist_colnos (List *tlist) |
PlanRowMark * | get_plan_rowmark (List *rowmarks, Index rtindex) |
Definition at line 379 of file preptlist.c.
References COERCE_IMPLICIT_CAST, coerce_to_domain(), COERCION_IMPLICIT, elog, ERROR, flatCopyTargetEntry(), InvalidOid, lappend(), lfirst, list_head(), lnext(), makeConst(), makeTargetEntry(), NameStr, NIL, pstrdup(), RelationData::rd_att, RelationGetNumberOfAttributes, TargetEntry::resno, and TupleDescAttr.
Referenced by preprocess_targetlist().
Definition at line 345 of file preptlist.c.
References lappend_int(), lfirst, NIL, and TargetEntry::resno.
Referenced by make_modifytable(), and preprocess_targetlist().
PlanRowMark* get_plan_rowmark | ( | List * | rowmarks, |
Index | rtindex | ||
) |
Definition at line 509 of file preptlist.c.
References lfirst, and PlanRowMark::rti.
Referenced by check_index_predicates(), deparseLockingClause(), and expand_inherited_rtentry().
void preprocess_targetlist | ( | PlannerInfo * | root | ) |
Definition at line 62 of file preptlist.c.
References generate_unaccent_rules::action, add_row_identity_columns(), PlanRowMark::allMarkTypes, Assert, CMD_DELETE, CMD_INSERT, CMD_MERGE, CMD_SELECT, CMD_UPDATE, elog, ERROR, expand_insert_targetlist(), extract_update_targetlist_colnos(), RangeTblEntry::inh, InvalidOid, IsA, PlanRowMark::isParent, lappend(), lfirst, list_concat_copy(), list_free(), list_length(), makeTargetEntry(), makeVar(), makeWholeRowVar(), NoLock, parse(), PlanRowMark::prti, pstrdup(), pull_var_clause(), PVC_INCLUDE_PLACEHOLDERS, PVC_RECURSE_AGGREGATES, PVC_RECURSE_WINDOWFUNCS, RangeTblEntry::relid, root, ROW_MARK_COPY, PlanRowMark::rowmarkId, rt_fetch, RTE_RELATION, RangeTblEntry::rtekind, PlanRowMark::rti, SelfItemPointerAttributeNumber, snprintf, table_close(), table_open(), TableOidAttributeNumber, tlist_member(), and Var::varno.
Referenced by grouping_planner().