mirror of
https://github.com/postgres/postgres.git
synced 2025-05-28 05:21:27 +03:00
Stop including parsenodes.h in plannodes.h
I added it by mistake in commit 7103ebb7aae8. To clean up, struct MergeAction needs to be moved to primnodes.h from parsenodes.h. (This forces us to also move OverridingKind to primnodes.h). Having to add parsenodes.h to bootstrap.h as fallout is a bit surprising, since nothing nominally needs it there. However, per comments in bootscanner.l, it is needed so that YYSTYPE can be declared. I think this only started with commit dac048f71ebb, but I didn't actually verify that. In passing, stop including parsenodes.h in tcopprot.h. Nothing needs it there. Per discussion on a patch by Ashutosh Bapat. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/202311071106.6y7b2ascqjlz@alvherre.pgsql
This commit is contained in:
parent
3c551ebede
commit
615f5f6faa
@ -13,6 +13,7 @@
|
||||
*/
|
||||
#include "postgres.h"
|
||||
|
||||
#include "nodes/parsenodes.h"
|
||||
#include "nodes/supportnodes.h"
|
||||
#include "utils/builtins.h"
|
||||
#include "windowapi.h"
|
||||
|
@ -15,6 +15,7 @@
|
||||
#define BOOTSTRAP_H
|
||||
|
||||
#include "nodes/execnodes.h"
|
||||
#include "nodes/parsenodes.h"
|
||||
|
||||
|
||||
/*
|
||||
|
@ -30,13 +30,6 @@
|
||||
#include "partitioning/partdefs.h"
|
||||
|
||||
|
||||
typedef enum OverridingKind
|
||||
{
|
||||
OVERRIDING_NOT_SET = 0,
|
||||
OVERRIDING_USER_VALUE,
|
||||
OVERRIDING_SYSTEM_VALUE,
|
||||
} OverridingKind;
|
||||
|
||||
/* Possible sources of a Query */
|
||||
typedef enum QuerySource
|
||||
{
|
||||
@ -1681,23 +1674,6 @@ typedef struct MergeWhenClause
|
||||
List *values; /* VALUES to INSERT, or NULL */
|
||||
} MergeWhenClause;
|
||||
|
||||
/*
|
||||
* MergeAction -
|
||||
* Transformed representation of a WHEN clause in a MERGE statement
|
||||
*/
|
||||
typedef struct MergeAction
|
||||
{
|
||||
NodeTag type;
|
||||
bool matched; /* true=MATCHED, false=NOT MATCHED */
|
||||
CmdType commandType; /* INSERT/UPDATE/DELETE/DO NOTHING */
|
||||
/* OVERRIDING clause */
|
||||
OverridingKind override pg_node_attr(query_jumble_ignore);
|
||||
Node *qual; /* transformed WHEN conditions */
|
||||
List *targetList; /* the target list (of TargetEntry) */
|
||||
/* target attribute numbers of an UPDATE */
|
||||
List *updateColnos pg_node_attr(query_jumble_ignore);
|
||||
} MergeAction;
|
||||
|
||||
/*
|
||||
* TriggerTransition -
|
||||
* representation of transition row or table naming clause
|
||||
|
@ -20,7 +20,6 @@
|
||||
#include "lib/stringinfo.h"
|
||||
#include "nodes/bitmapset.h"
|
||||
#include "nodes/lockoptions.h"
|
||||
#include "nodes/parsenodes.h"
|
||||
#include "nodes/primnodes.h"
|
||||
|
||||
|
||||
|
@ -22,6 +22,14 @@
|
||||
#include "nodes/pg_list.h"
|
||||
|
||||
|
||||
typedef enum OverridingKind
|
||||
{
|
||||
OVERRIDING_NOT_SET = 0,
|
||||
OVERRIDING_USER_VALUE,
|
||||
OVERRIDING_SYSTEM_VALUE,
|
||||
} OverridingKind;
|
||||
|
||||
|
||||
/* ----------------------------------------------------------------
|
||||
* node definitions
|
||||
* ----------------------------------------------------------------
|
||||
@ -1718,6 +1726,25 @@ typedef struct BooleanTest
|
||||
int location; /* token location, or -1 if unknown */
|
||||
} BooleanTest;
|
||||
|
||||
|
||||
/*
|
||||
* MergeAction
|
||||
*
|
||||
* Transformed representation of a WHEN clause in a MERGE statement
|
||||
*/
|
||||
typedef struct MergeAction
|
||||
{
|
||||
NodeTag type;
|
||||
bool matched; /* true=MATCHED, false=NOT MATCHED */
|
||||
CmdType commandType; /* INSERT/UPDATE/DELETE/DO NOTHING */
|
||||
/* OVERRIDING clause */
|
||||
OverridingKind override pg_node_attr(query_jumble_ignore);
|
||||
Node *qual; /* transformed WHEN conditions */
|
||||
List *targetList; /* the target list (of TargetEntry) */
|
||||
/* target attribute numbers of an UPDATE */
|
||||
List *updateColnos pg_node_attr(query_jumble_ignore);
|
||||
} MergeAction;
|
||||
|
||||
/*
|
||||
* CoerceToDomain
|
||||
*
|
||||
|
@ -15,7 +15,6 @@
|
||||
#define TCOPPROT_H
|
||||
|
||||
#include "nodes/params.h"
|
||||
#include "nodes/parsenodes.h"
|
||||
#include "nodes/plannodes.h"
|
||||
#include "storage/procsignal.h"
|
||||
#include "utils/guc.h"
|
||||
|
Loading…
x
Reference in New Issue
Block a user