From 364a9f47ab363250f62dd2c381c4da435283725a Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 10 Mar 2016 15:52:58 -0500 Subject: Refactor pull_var_clause's API to make it less tedious to extend. In commit 1d97c19a0f748e94 and later c1d9579dd8bf3c92, we extended pull_var_clause's API by adding enum-type arguments. That's sort of a pain to maintain, though, because it means every time we add a new behavior we must touch every last one of the call sites, even if there's a reasonable default behavior that most of them could use. Let's switch over to using a bitmask of flags, instead; that seems more maintainable and might save a nanosecond or two as well. This commit changes no behavior in itself, though I'm going to follow it up with one that does add a new behavior. In passing, remove flatten_tlist(), which has not been used since 9.1 and would otherwise need the same API changes. Removing these enums means that optimizer/tlist.h no longer needs to depend on optimizer/var.h. Changing that caused a number of C files to need addition of #include "optimizer/var.h" (probably we can thank old runs of pgrminclude for that); but on balance it seems like a good change anyway. --- src/backend/commands/trigger.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'src/backend/commands') diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c index cca2e43b100..5fa2063c935 100644 --- a/src/backend/commands/trigger.c +++ b/src/backend/commands/trigger.c @@ -352,9 +352,7 @@ CreateTrigger(CreateTrigStmt *stmt, const char *queryString, * subselects in WHEN clauses; it would fail to examine the contents * of subselects. */ - varList = pull_var_clause(whenClause, - PVC_REJECT_AGGREGATES, - PVC_REJECT_PLACEHOLDERS); + varList = pull_var_clause(whenClause, 0); foreach(lc, varList) { Var *var = (Var *) lfirst(lc); -- cgit v1.2.3