Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
deparse_utility.h109 linesDownload Raw Back to tcop
1/*-------------------------------------------------------------------------2 *3 * deparse_utility.h4 *5 * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group6 * Portions Copyright (c) 1994, Regents of the University of California7 *8 * src/include/tcop/deparse_utility.h9 *10 *-------------------------------------------------------------------------11 */12#ifndef DEPARSE_UTILITY_H13#define DEPARSE_UTILITY_H14 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 */24typedef enum CollectedCommandType25{26	SCT_Simple,27	SCT_AlterTable,28	SCT_Grant,29	SCT_AlterOpFamily,30	SCT_AlterDefaultPrivileges,31	SCT_CreateOpClass,32	SCT_AlterTSConfig33} CollectedCommandType;34 35/*36 * For ALTER TABLE commands, we keep a list of the subcommands therein.37 */38typedef struct CollectedATSubcmd39{40	ObjectAddress address;		/* affected column, constraint, index, ... */41	Node	   *parsetree;42} CollectedATSubcmd;43 44typedef struct CollectedCommand45{46	CollectedCommandType type;47 48	bool		in_extension;49	Node	   *parsetree;50 51	union52	{53		/* most commands */54		struct55		{56			ObjectAddress address;57			ObjectAddress secondaryObject;58		}			simple;59 60		/* ALTER TABLE, and internal uses thereof */61		struct62		{63			Oid			objectId;64			Oid			classId;65			List	   *subcmds;66		}			alterTable;67 68		/* GRANT / REVOKE */69		struct70		{71			InternalGrant *istmt;72		}			grant;73 74		/* ALTER OPERATOR FAMILY */75		struct76		{77			ObjectAddress address;78			List	   *operators;79			List	   *procedures;80		}			opfam;81 82		/* CREATE OPERATOR CLASS */83		struct84		{85			ObjectAddress address;86			List	   *operators;87			List	   *procedures;88		}			createopc;89 90		/* ALTER TEXT SEARCH CONFIGURATION ADD/ALTER/DROP MAPPING */91		struct92		{93			ObjectAddress address;94			Oid		   *dictIds;95			int			ndicts;96		}			atscfg;97 98		/* ALTER DEFAULT PRIVILEGES */99		struct100		{101			ObjectType	objtype;102		}			defprivs;103	}			d;104 105	struct CollectedCommand *parent;	/* when nested */106} CollectedCommand;107 108#endif							/* DEPARSE_UTILITY_H */109 
codekingpro/portable-devtools · Team Ai