PostgreSQL Source Code  git master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
deparse_utility.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2  *
3  * deparse_utility.h
4  *
5  * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
6  * Portions Copyright (c) 1994, Regents of the University of California
7  *
8  * src/include/tcop/deparse_utility.h
9  *
10  *-------------------------------------------------------------------------
11  */
12 #ifndef DEPARSE_UTILITY_H
13 #define DEPARSE_UTILITY_H
14 
15 #include "access/attnum.h"
16 #include "catalog/objectaddress.h"
17 #include "nodes/nodes.h"
18 #include "utils/aclchk_internal.h"
19 
20 
21 /*
22  * Support for keeping track of collected commands.
23  */
25 {
34 
35 /*
36  * For ALTER TABLE commands, we keep a list of the subcommands therein.
37  */
38 typedef struct CollectedATSubcmd
39 {
40  ObjectAddress address; /* affected column, constraint, index, ... */
43 
44 typedef struct CollectedCommand
45 {
49 
50  union
51  {
52  /* most commands */
53  struct
54  {
57  } simple;
58 
59  /* ALTER TABLE, and internal uses thereof */
60  struct
61  {
65  } alterTable;
66 
67  /* GRANT / REVOKE */
68  struct
69  {
71  } grant;
72 
73  /* ALTER OPERATOR FAMILY */
74  struct
75  {
79  } opfam;
80 
81  /* CREATE OPERATOR CLASS */
82  struct
83  {
85  List *operators;
87  } createopc;
88 
89  /* ALTER TEXT SEARCH CONFIGURATION ADD/ALTER/DROP MAPPING */
90  struct
91  {
94  int ndicts;
95  } atscfg;
96 
97  /* ALTER DEFAULT PRIVILEGES */
98  struct
99  {
101  } defprivs;
102  } d;
104 
105 #endif /* DEPARSE_UTILITY_H */
GrantObjectType
Definition: parsenodes.h:1733
GrantObjectType objtype
struct CollectedCommand::@58::@61 grant
struct CollectedCommand::@58::@59 simple
struct CollectedCommand::@58::@65 defprivs
Definition: nodes.h:508
struct CollectedATSubcmd CollectedATSubcmd
CollectedCommandType type
unsigned int Oid
Definition: postgres_ext.h:31
struct CollectedCommand::@58::@64 atscfg
ObjectAddress secondaryObject
struct CollectedCommand::@58::@63 createopc
struct CollectedCommand::@58::@62 opfam
CollectedCommandType
InternalGrant * istmt
union CollectedCommand::@58 d
ObjectAddress address
struct CollectedCommand CollectedCommand
Definition: pg_list.h:45
struct CollectedCommand::@58::@60 alterTable
ObjectAddress address