aboutsummaryrefslogtreecommitdiff
path: root/src/backend/commands
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/commands')
-rw-r--r--src/backend/commands/aggregatecmds.c4
-rw-r--r--src/backend/commands/async.c8
-rw-r--r--src/backend/commands/collationcmds.c2
-rw-r--r--src/backend/commands/copy.c6
-rw-r--r--src/backend/commands/createas.c2
-rw-r--r--src/backend/commands/dropcmds.c8
-rw-r--r--src/backend/commands/explain.c6
-rw-r--r--src/backend/commands/extension.c4
-rw-r--r--src/backend/commands/foreigncmds.c2
-rw-r--r--src/backend/commands/functioncmds.c5
-rw-r--r--src/backend/commands/matview.c2
-rw-r--r--src/backend/commands/opclasscmds.c6
-rw-r--r--src/backend/commands/portalcmds.c2
-rw-r--r--src/backend/commands/prepare.c4
-rw-r--r--src/backend/commands/tablecmds.c4
-rw-r--r--src/backend/commands/trigger.c2
-rw-r--r--src/backend/commands/user.c2
-rw-r--r--src/backend/commands/view.c2
18 files changed, 36 insertions, 35 deletions
diff --git a/src/backend/commands/aggregatecmds.c b/src/backend/commands/aggregatecmds.c
index 23411293518..a84c61493f5 100644
--- a/src/backend/commands/aggregatecmds.c
+++ b/src/backend/commands/aggregatecmds.c
@@ -109,13 +109,13 @@ DefineAggregate(ParseState *pstate, List *name, List *args, bool oldstyle, List
aggKind = AGGKIND_ORDERED_SET;
else
numDirectArgs = 0;
- args = castNode(List, linitial(args));
+ args = linitial_node(List, args);
}
/* Examine aggregate's definition clauses */
foreach(pl, parameters)
{
- DefElem *defel = castNode(DefElem, lfirst(pl));
+ DefElem *defel = lfirst_node(DefElem, pl);
/*
* sfunc1, stype1, and initcond1 are accepted as obsolete spellings
diff --git a/src/backend/commands/async.c b/src/backend/commands/async.c
index e32d7a1d4ec..87b215d8d32 100644
--- a/src/backend/commands/async.c
+++ b/src/backend/commands/async.c
@@ -1636,7 +1636,7 @@ AtSubCommit_Notify(void)
List *parentPendingActions;
List *parentPendingNotifies;
- parentPendingActions = castNode(List, linitial(upperPendingActions));
+ parentPendingActions = linitial_node(List, upperPendingActions);
upperPendingActions = list_delete_first(upperPendingActions);
Assert(list_length(upperPendingActions) ==
@@ -1647,7 +1647,7 @@ AtSubCommit_Notify(void)
*/
pendingActions = list_concat(parentPendingActions, pendingActions);
- parentPendingNotifies = castNode(List, linitial(upperPendingNotifies));
+ parentPendingNotifies = linitial_node(List, upperPendingNotifies);
upperPendingNotifies = list_delete_first(upperPendingNotifies);
Assert(list_length(upperPendingNotifies) ==
@@ -1679,13 +1679,13 @@ AtSubAbort_Notify(void)
*/
while (list_length(upperPendingActions) > my_level - 2)
{
- pendingActions = castNode(List, linitial(upperPendingActions));
+ pendingActions = linitial_node(List, upperPendingActions);
upperPendingActions = list_delete_first(upperPendingActions);
}
while (list_length(upperPendingNotifies) > my_level - 2)
{
- pendingNotifies = castNode(List, linitial(upperPendingNotifies));
+ pendingNotifies = linitial_node(List, upperPendingNotifies);
upperPendingNotifies = list_delete_first(upperPendingNotifies);
}
}
diff --git a/src/backend/commands/collationcmds.c b/src/backend/commands/collationcmds.c
index 835cb263db3..9264d7fc510 100644
--- a/src/backend/commands/collationcmds.c
+++ b/src/backend/commands/collationcmds.c
@@ -71,7 +71,7 @@ DefineCollation(ParseState *pstate, List *names, List *parameters, bool if_not_e
foreach(pl, parameters)
{
- DefElem *defel = castNode(DefElem, lfirst(pl));
+ DefElem *defel = lfirst_node(DefElem, pl);
DefElem **defelp;
if (pg_strcasecmp(defel->defname, "from") == 0)
diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c
index 73677be59e0..b5af2be39bd 100644
--- a/src/backend/commands/copy.c
+++ b/src/backend/commands/copy.c
@@ -1034,7 +1034,7 @@ ProcessCopyOptions(ParseState *pstate,
/* Extract options from the statement node tree */
foreach(option, options)
{
- DefElem *defel = castNode(DefElem, lfirst(option));
+ DefElem *defel = lfirst_node(DefElem, option);
if (strcmp(defel->defname, "format") == 0)
{
@@ -1488,7 +1488,7 @@ BeginCopy(ParseState *pstate,
/* examine queries to determine which error message to issue */
foreach(lc, rewritten)
{
- Query *q = castNode(Query, lfirst(lc));
+ Query *q = lfirst_node(Query, lc);
if (q->querySource == QSRC_QUAL_INSTEAD_RULE)
ereport(ERROR,
@@ -1505,7 +1505,7 @@ BeginCopy(ParseState *pstate,
errmsg("multi-statement DO INSTEAD rules are not supported for COPY")));
}
- query = castNode(Query, linitial(rewritten));
+ query = linitial_node(Query, rewritten);
/* The grammar allows SELECT INTO, but we don't support that */
if (query->utilityStmt != NULL &&
diff --git a/src/backend/commands/createas.c b/src/backend/commands/createas.c
index f49b391505b..06425cc0ebd 100644
--- a/src/backend/commands/createas.c
+++ b/src/backend/commands/createas.c
@@ -323,7 +323,7 @@ ExecCreateTableAs(CreateTableAsStmt *stmt, const char *queryString,
elog(ERROR, "unexpected rewrite result for %s",
is_matview ? "CREATE MATERIALIZED VIEW" :
"CREATE TABLE AS SELECT");
- query = castNode(Query, linitial(rewritten));
+ query = linitial_node(Query, rewritten);
Assert(query->commandType == CMD_SELECT);
/* plan the query --- note we disallow parallelism */
diff --git a/src/backend/commands/dropcmds.c b/src/backend/commands/dropcmds.c
index cb948f0204d..c18bc319bed 100644
--- a/src/backend/commands/dropcmds.c
+++ b/src/backend/commands/dropcmds.c
@@ -214,7 +214,7 @@ type_in_list_does_not_exist_skipping(List *typenames, const char **msg,
foreach(l, typenames)
{
- TypeName *typeName = castNode(TypeName, lfirst(l));
+ TypeName *typeName = lfirst_node(TypeName, l);
if (typeName != NULL)
{
@@ -371,8 +371,8 @@ does_not_exist_skipping(ObjectType objtype, Node *object)
{
/* XXX quote or no quote? */
msg = gettext_noop("cast from type %s to type %s does not exist, skipping");
- name = TypeNameToString(castNode(TypeName, linitial(castNode(List, object))));
- args = TypeNameToString(castNode(TypeName, lsecond(castNode(List, object))));
+ name = TypeNameToString(linitial_node(TypeName, castNode(List, object)));
+ args = TypeNameToString(lsecond_node(TypeName, castNode(List, object)));
}
}
break;
@@ -380,7 +380,7 @@ does_not_exist_skipping(ObjectType objtype, Node *object)
if (!type_in_list_does_not_exist_skipping(list_make1(linitial(castNode(List, object))), &msg, &name))
{
msg = gettext_noop("transform for type %s language \"%s\" does not exist, skipping");
- name = TypeNameToString(castNode(TypeName, linitial(castNode(List, object))));
+ name = TypeNameToString(linitial_node(TypeName, castNode(List, object)));
args = strVal(lsecond(castNode(List, object)));
}
break;
diff --git a/src/backend/commands/explain.c b/src/backend/commands/explain.c
index e549f9d360a..9359d0a83ad 100644
--- a/src/backend/commands/explain.c
+++ b/src/backend/commands/explain.c
@@ -253,7 +253,7 @@ ExplainQuery(ParseState *pstate, ExplainStmt *stmt, const char *queryString,
/* Explain every plan */
foreach(l, rewritten)
{
- ExplainOneQuery(castNode(Query, lfirst(l)),
+ ExplainOneQuery(lfirst_node(Query, l),
CURSOR_OPT_PARALLEL_OK, NULL, es,
queryString, params, queryEnv);
@@ -408,7 +408,7 @@ ExplainOneUtility(Node *utilityStmt, IntoClause *into, ExplainState *es,
rewritten = QueryRewrite(castNode(Query, copyObject(ctas->query)));
Assert(list_length(rewritten) == 1);
- ExplainOneQuery(castNode(Query, linitial(rewritten)),
+ ExplainOneQuery(linitial_node(Query, rewritten),
0, ctas->into, es,
queryString, params, queryEnv);
}
@@ -427,7 +427,7 @@ ExplainOneUtility(Node *utilityStmt, IntoClause *into, ExplainState *es,
rewritten = QueryRewrite(castNode(Query, copyObject(dcs->query)));
Assert(list_length(rewritten) == 1);
- ExplainOneQuery(castNode(Query, linitial(rewritten)),
+ ExplainOneQuery(linitial_node(Query, rewritten),
dcs->options, NULL, es,
queryString, params, queryEnv);
}
diff --git a/src/backend/commands/extension.c b/src/backend/commands/extension.c
index 6be9bc457c2..d371a2a3c15 100644
--- a/src/backend/commands/extension.c
+++ b/src/backend/commands/extension.c
@@ -714,7 +714,7 @@ execute_sql_string(const char *sql, const char *filename)
*/
foreach(lc1, raw_parsetree_list)
{
- RawStmt *parsetree = castNode(RawStmt, lfirst(lc1));
+ RawStmt *parsetree = lfirst_node(RawStmt, lc1);
List *stmt_list;
ListCell *lc2;
@@ -727,7 +727,7 @@ execute_sql_string(const char *sql, const char *filename)
foreach(lc2, stmt_list)
{
- PlannedStmt *stmt = castNode(PlannedStmt, lfirst(lc2));
+ PlannedStmt *stmt = lfirst_node(PlannedStmt, lc2);
CommandCounterIncrement();
diff --git a/src/backend/commands/foreigncmds.c b/src/backend/commands/foreigncmds.c
index 4ffe1bca75b..96cf296210f 100644
--- a/src/backend/commands/foreigncmds.c
+++ b/src/backend/commands/foreigncmds.c
@@ -1589,7 +1589,7 @@ ImportForeignSchema(ImportForeignSchemaStmt *stmt)
*/
foreach(lc2, raw_parsetree_list)
{
- RawStmt *rs = castNode(RawStmt, lfirst(lc2));
+ RawStmt *rs = lfirst_node(RawStmt, lc2);
CreateForeignTableStmt *cstmt = (CreateForeignTableStmt *) rs->stmt;
PlannedStmt *pstmt;
diff --git a/src/backend/commands/functioncmds.c b/src/backend/commands/functioncmds.c
index b9aedb2292f..ffcae341892 100644
--- a/src/backend/commands/functioncmds.c
+++ b/src/backend/commands/functioncmds.c
@@ -578,7 +578,7 @@ update_proconfig_value(ArrayType *a, List *set_items)
foreach(l, set_items)
{
- VariableSetStmt *sstmt = castNode(VariableSetStmt, lfirst(l));
+ VariableSetStmt *sstmt = lfirst_node(VariableSetStmt, l);
if (sstmt->kind == VAR_RESET_ALL)
a = NULL;
@@ -972,7 +972,8 @@ CreateFunction(ParseState *pstate, CreateFunctionStmt *stmt)
foreach(lc, castNode(List, transformDefElem))
{
- Oid typeid = typenameTypeId(NULL, lfirst(lc));
+ Oid typeid = typenameTypeId(NULL,
+ lfirst_node(TypeName, lc));
Oid elt = get_base_element_type(typeid);
typeid = elt ? elt : typeid;
diff --git a/src/backend/commands/matview.c b/src/backend/commands/matview.c
index 2f933283186..9ffd91ea0e3 100644
--- a/src/backend/commands/matview.c
+++ b/src/backend/commands/matview.c
@@ -264,7 +264,7 @@ ExecRefreshMatView(RefreshMatViewStmt *stmt, const char *queryString,
* The stored query was rewritten at the time of the MV definition, but
* has not been scribbled on by the planner.
*/
- dataQuery = castNode(Query, linitial(actions));
+ dataQuery = linitial_node(Query, actions);
/*
* Check for active uses of the relation in the current transaction, such
diff --git a/src/backend/commands/opclasscmds.c b/src/backend/commands/opclasscmds.c
index 822b331e0dc..ab51d1a4178 100644
--- a/src/backend/commands/opclasscmds.c
+++ b/src/backend/commands/opclasscmds.c
@@ -460,7 +460,7 @@ DefineOpClass(CreateOpClassStmt *stmt)
*/
foreach(l, stmt->items)
{
- CreateOpClassItem *item = castNode(CreateOpClassItem, lfirst(l));
+ CreateOpClassItem *item = lfirst_node(CreateOpClassItem, l);
Oid operOid;
Oid funcOid;
Oid sortfamilyOid;
@@ -834,7 +834,7 @@ AlterOpFamilyAdd(AlterOpFamilyStmt *stmt, Oid amoid, Oid opfamilyoid,
*/
foreach(l, items)
{
- CreateOpClassItem *item = castNode(CreateOpClassItem, lfirst(l));
+ CreateOpClassItem *item = lfirst_node(CreateOpClassItem, l);
Oid operOid;
Oid funcOid;
Oid sortfamilyOid;
@@ -959,7 +959,7 @@ AlterOpFamilyDrop(AlterOpFamilyStmt *stmt, Oid amoid, Oid opfamilyoid,
*/
foreach(l, items)
{
- CreateOpClassItem *item = castNode(CreateOpClassItem, lfirst(l));
+ CreateOpClassItem *item = lfirst_node(CreateOpClassItem, l);
Oid lefttype,
righttype;
OpFamilyMember *member;
diff --git a/src/backend/commands/portalcmds.c b/src/backend/commands/portalcmds.c
index f57cf87e8c3..167910fcb5b 100644
--- a/src/backend/commands/portalcmds.c
+++ b/src/backend/commands/portalcmds.c
@@ -83,7 +83,7 @@ PerformCursorOpen(DeclareCursorStmt *cstmt, ParamListInfo params,
if (list_length(rewritten) != 1)
elog(ERROR, "non-SELECT statement in DECLARE CURSOR");
- query = castNode(Query, linitial(rewritten));
+ query = linitial_node(Query, rewritten);
if (query->commandType != CMD_SELECT)
elog(ERROR, "non-SELECT statement in DECLARE CURSOR");
diff --git a/src/backend/commands/prepare.c b/src/backend/commands/prepare.c
index 00cc5139208..d265c77826f 100644
--- a/src/backend/commands/prepare.c
+++ b/src/backend/commands/prepare.c
@@ -267,7 +267,7 @@ ExecuteQuery(ExecuteStmt *stmt, IntoClause *intoClause,
ereport(ERROR,
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("prepared statement is not a SELECT")));
- pstmt = castNode(PlannedStmt, linitial(plan_list));
+ pstmt = linitial_node(PlannedStmt, plan_list);
if (pstmt->commandType != CMD_SELECT)
ereport(ERROR,
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
@@ -679,7 +679,7 @@ ExplainExecuteQuery(ExecuteStmt *execstmt, IntoClause *into, ExplainState *es,
/* Explain each query */
foreach(p, plan_list)
{
- PlannedStmt *pstmt = castNode(PlannedStmt, lfirst(p));
+ PlannedStmt *pstmt = lfirst_node(PlannedStmt, p);
if (pstmt->commandType != CMD_UTILITY)
ExplainOnePlan(pstmt, into, es, query_string, paramLI, queryEnv,
diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c
index 60f8b7f26c5..abb262b851c 100644
--- a/src/backend/commands/tablecmds.c
+++ b/src/backend/commands/tablecmds.c
@@ -5942,7 +5942,7 @@ ATExecSetIdentity(Relation rel, const char *colName, Node *def, LOCKMODE lockmod
foreach(option, castNode(List, def))
{
- DefElem *defel = castNode(DefElem, lfirst(option));
+ DefElem *defel = lfirst_node(DefElem, option);
if (strcmp(defel->defname, "generated") == 0)
{
@@ -9547,7 +9547,7 @@ ATPostAlterTypeParse(Oid oldId, Oid oldRelId, Oid refRelId, char *cmd,
querytree_list = NIL;
foreach(list_item, raw_parsetree_list)
{
- RawStmt *rs = castNode(RawStmt, lfirst(list_item));
+ RawStmt *rs = lfirst_node(RawStmt, list_item);
Node *stmt = rs->stmt;
if (IsA(stmt, IndexStmt))
diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c
index ebf23a0d94b..d05e51c8208 100644
--- a/src/backend/commands/trigger.c
+++ b/src/backend/commands/trigger.c
@@ -340,7 +340,7 @@ CreateTrigger(CreateTrigStmt *stmt, const char *queryString,
foreach(lc, varList)
{
- TriggerTransition *tt = castNode(TriggerTransition, lfirst(lc));
+ TriggerTransition *tt = lfirst_node(TriggerTransition, lc);
if (!(tt->isTable))
ereport(ERROR,
diff --git a/src/backend/commands/user.c b/src/backend/commands/user.c
index 14b97791442..de264974ae8 100644
--- a/src/backend/commands/user.c
+++ b/src/backend/commands/user.c
@@ -1388,7 +1388,7 @@ roleSpecsToIds(List *memberNames)
foreach(l, memberNames)
{
- RoleSpec *rolespec = castNode(RoleSpec, lfirst(l));
+ RoleSpec *rolespec = lfirst_node(RoleSpec, l);
Oid roleid;
roleid = get_rolespec_oid(rolespec, false);
diff --git a/src/backend/commands/view.c b/src/backend/commands/view.c
index 6909a67e77b..996acae6e0c 100644
--- a/src/backend/commands/view.c
+++ b/src/backend/commands/view.c
@@ -516,7 +516,7 @@ DefineView(ViewStmt *stmt, const char *queryString,
foreach(targetList, viewParse->targetList)
{
- TargetEntry *te = castNode(TargetEntry, lfirst(targetList));
+ TargetEntry *te = lfirst_node(TargetEntry, targetList);
/* junk columns don't get aliases */
if (te->resjunk)