PostgreSQL Source Code  git master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
parsenodes.h File Reference
#include "nodes/bitmapset.h"
#include "nodes/lockoptions.h"
#include "nodes/primnodes.h"
#include "nodes/value.h"
Include dependency graph for parsenodes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Query
 
struct  TypeName
 
struct  ColumnRef
 
struct  ParamRef
 
struct  A_Expr
 
struct  A_Const
 
struct  TypeCast
 
struct  CollateClause
 
struct  RoleSpec
 
struct  FuncCall
 
struct  A_Star
 
struct  A_Indices
 
struct  A_Indirection
 
struct  A_ArrayExpr
 
struct  ResTarget
 
struct  MultiAssignRef
 
struct  SortBy
 
struct  WindowDef
 
struct  RangeSubselect
 
struct  RangeFunction
 
struct  RangeTableFunc
 
struct  RangeTableFuncCol
 
struct  RangeTableSample
 
struct  ColumnDef
 
struct  TableLikeClause
 
struct  IndexElem
 
struct  DefElem
 
struct  LockingClause
 
struct  XmlSerialize
 
struct  PartitionElem
 
struct  PartitionSpec
 
struct  PartitionBoundSpec
 
struct  PartitionRangeDatum
 
struct  PartitionCmd
 
struct  RangeTblEntry
 
struct  RangeTblFunction
 
struct  TableSampleClause
 
struct  WithCheckOption
 
struct  SortGroupClause
 
struct  GroupingSet
 
struct  WindowClause
 
struct  RowMarkClause
 
struct  WithClause
 
struct  InferClause
 
struct  OnConflictClause
 
struct  CommonTableExpr
 
struct  TriggerTransition
 
struct  RawStmt
 
struct  InsertStmt
 
struct  DeleteStmt
 
struct  UpdateStmt
 
struct  SelectStmt
 
struct  SetOperationStmt
 
struct  CreateSchemaStmt
 
struct  AlterTableStmt
 
struct  ReplicaIdentityStmt
 
struct  AlterTableCmd
 
struct  AlterCollationStmt
 
struct  AlterDomainStmt
 
struct  GrantStmt
 
struct  ObjectWithArgs
 
struct  AccessPriv
 
struct  GrantRoleStmt
 
struct  AlterDefaultPrivilegesStmt
 
struct  CopyStmt
 
struct  VariableSetStmt
 
struct  VariableShowStmt
 
struct  CreateStmt
 
struct  Constraint
 
struct  CreateTableSpaceStmt
 
struct  DropTableSpaceStmt
 
struct  AlterTableSpaceOptionsStmt
 
struct  AlterTableMoveAllStmt
 
struct  CreateExtensionStmt
 
struct  AlterExtensionStmt
 
struct  AlterExtensionContentsStmt
 
struct  CreateFdwStmt
 
struct  AlterFdwStmt
 
struct  CreateForeignServerStmt
 
struct  AlterForeignServerStmt
 
struct  CreateForeignTableStmt
 
struct  CreateUserMappingStmt
 
struct  AlterUserMappingStmt
 
struct  DropUserMappingStmt
 
struct  ImportForeignSchemaStmt
 
struct  CreatePolicyStmt
 
struct  AlterPolicyStmt
 
struct  CreateAmStmt
 
struct  CreateTrigStmt
 
struct  CreateEventTrigStmt
 
struct  AlterEventTrigStmt
 
struct  CreatePLangStmt
 
struct  CreateRoleStmt
 
struct  AlterRoleStmt
 
struct  AlterRoleSetStmt
 
struct  DropRoleStmt
 
struct  CreateSeqStmt
 
struct  AlterSeqStmt
 
struct  DefineStmt
 
struct  CreateDomainStmt
 
struct  CreateOpClassStmt
 
struct  CreateOpClassItem
 
struct  CreateOpFamilyStmt
 
struct  AlterOpFamilyStmt
 
struct  DropStmt
 
struct  TruncateStmt
 
struct  CommentStmt
 
struct  SecLabelStmt
 
struct  DeclareCursorStmt
 
struct  ClosePortalStmt
 
struct  FetchStmt
 
struct  IndexStmt
 
struct  CreateStatsStmt
 
struct  CreateFunctionStmt
 
struct  FunctionParameter
 
struct  AlterFunctionStmt
 
struct  DoStmt
 
struct  InlineCodeBlock
 
struct  RenameStmt
 
struct  AlterObjectDependsStmt
 
struct  AlterObjectSchemaStmt
 
struct  AlterOwnerStmt
 
struct  AlterOperatorStmt
 
struct  RuleStmt
 
struct  NotifyStmt
 
struct  ListenStmt
 
struct  UnlistenStmt
 
struct  TransactionStmt
 
struct  CompositeTypeStmt
 
struct  CreateEnumStmt
 
struct  CreateRangeStmt
 
struct  AlterEnumStmt
 
struct  ViewStmt
 
struct  LoadStmt
 
struct  CreatedbStmt
 
struct  AlterDatabaseStmt
 
struct  AlterDatabaseSetStmt
 
struct  DropdbStmt
 
struct  AlterSystemStmt
 
struct  ClusterStmt
 
struct  VacuumStmt
 
struct  ExplainStmt
 
struct  CreateTableAsStmt
 
struct  RefreshMatViewStmt
 
struct  CheckPointStmt
 
struct  DiscardStmt
 
struct  LockStmt
 
struct  ConstraintsSetStmt
 
struct  ReindexStmt
 
struct  CreateConversionStmt
 
struct  CreateCastStmt
 
struct  CreateTransformStmt
 
struct  PrepareStmt
 
struct  ExecuteStmt
 
struct  DeallocateStmt
 
struct  DropOwnedStmt
 
struct  ReassignOwnedStmt
 
struct  AlterTSDictionaryStmt
 
struct  AlterTSConfigurationStmt
 
struct  CreatePublicationStmt
 
struct  AlterPublicationStmt
 
struct  CreateSubscriptionStmt
 
struct  AlterSubscriptionStmt
 
struct  DropSubscriptionStmt
 

Macros

#define ACL_INSERT   (1<<0) /* for relations */
 
#define ACL_SELECT   (1<<1)
 
#define ACL_UPDATE   (1<<2)
 
#define ACL_DELETE   (1<<3)
 
#define ACL_TRUNCATE   (1<<4)
 
#define ACL_REFERENCES   (1<<5)
 
#define ACL_TRIGGER   (1<<6)
 
#define ACL_EXECUTE   (1<<7) /* for functions */
 
#define ACL_USAGE
 
#define ACL_CREATE   (1<<9) /* for namespaces and databases */
 
#define ACL_CREATE_TEMP   (1<<10) /* for databases */
 
#define ACL_CONNECT   (1<<11) /* for databases */
 
#define N_ACL_RIGHTS   12 /* 1 plus the last 1<<x */
 
#define ACL_NO_RIGHTS   0
 
#define ACL_SELECT_FOR_UPDATE   ACL_UPDATE
 
#define FRAMEOPTION_NONDEFAULT   0x00001 /* any specified? */
 
#define FRAMEOPTION_RANGE   0x00002 /* RANGE behavior */
 
#define FRAMEOPTION_ROWS   0x00004 /* ROWS behavior */
 
#define FRAMEOPTION_BETWEEN   0x00008 /* BETWEEN given? */
 
#define FRAMEOPTION_START_UNBOUNDED_PRECEDING   0x00010 /* start is U. P. */
 
#define FRAMEOPTION_END_UNBOUNDED_PRECEDING   0x00020 /* (disallowed) */
 
#define FRAMEOPTION_START_UNBOUNDED_FOLLOWING   0x00040 /* (disallowed) */
 
#define FRAMEOPTION_END_UNBOUNDED_FOLLOWING   0x00080 /* end is U. F. */
 
#define FRAMEOPTION_START_CURRENT_ROW   0x00100 /* start is C. R. */
 
#define FRAMEOPTION_END_CURRENT_ROW   0x00200 /* end is C. R. */
 
#define FRAMEOPTION_START_VALUE_PRECEDING   0x00400 /* start is V. P. */
 
#define FRAMEOPTION_END_VALUE_PRECEDING   0x00800 /* end is V. P. */
 
#define FRAMEOPTION_START_VALUE_FOLLOWING   0x01000 /* start is V. F. */
 
#define FRAMEOPTION_END_VALUE_FOLLOWING   0x02000 /* end is V. F. */
 
#define FRAMEOPTION_START_VALUE   (FRAMEOPTION_START_VALUE_PRECEDING | FRAMEOPTION_START_VALUE_FOLLOWING)
 
#define FRAMEOPTION_END_VALUE   (FRAMEOPTION_END_VALUE_PRECEDING | FRAMEOPTION_END_VALUE_FOLLOWING)
 
#define FRAMEOPTION_DEFAULTS
 
#define PARTITION_STRATEGY_LIST   'l'
 
#define PARTITION_STRATEGY_RANGE   'r'
 
#define GetCTETargetList(cte)
 
#define FKCONSTR_ACTION_NOACTION   'a'
 
#define FKCONSTR_ACTION_RESTRICT   'r'
 
#define FKCONSTR_ACTION_CASCADE   'c'
 
#define FKCONSTR_ACTION_SETNULL   'n'
 
#define FKCONSTR_ACTION_SETDEFAULT   'd'
 
#define FKCONSTR_MATCH_FULL   'f'
 
#define FKCONSTR_MATCH_PARTIAL   'p'
 
#define FKCONSTR_MATCH_SIMPLE   's'
 
#define OPCLASS_ITEM_OPERATOR   1
 
#define OPCLASS_ITEM_FUNCTION   2
 
#define OPCLASS_ITEM_STORAGETYPE   3
 
#define CURSOR_OPT_BINARY   0x0001 /* BINARY */
 
#define CURSOR_OPT_SCROLL   0x0002 /* SCROLL explicitly given */
 
#define CURSOR_OPT_NO_SCROLL   0x0004 /* NO SCROLL explicitly given */
 
#define CURSOR_OPT_INSENSITIVE   0x0008 /* INSENSITIVE */
 
#define CURSOR_OPT_HOLD   0x0010 /* WITH HOLD */
 
#define CURSOR_OPT_FAST_PLAN   0x0020 /* prefer fast-start plan */
 
#define CURSOR_OPT_GENERIC_PLAN   0x0040 /* force use of generic plan */
 
#define CURSOR_OPT_CUSTOM_PLAN   0x0080 /* force use of custom plan */
 
#define CURSOR_OPT_PARALLEL_OK   0x0100 /* parallel mode OK */
 
#define FETCH_ALL   LONG_MAX
 
#define REINDEXOPT_VERBOSE   1 << 0 /* print progress info */
 

Typedefs

typedef enum OverridingKind OverridingKind
 
typedef enum QuerySource QuerySource
 
typedef enum SortByDir SortByDir
 
typedef enum SortByNulls SortByNulls
 
typedef uint32 AclMode
 
typedef struct Query Query
 
typedef struct TypeName TypeName
 
typedef struct ColumnRef ColumnRef
 
typedef struct ParamRef ParamRef
 
typedef enum A_Expr_Kind A_Expr_Kind
 
typedef struct A_Expr A_Expr
 
typedef struct A_Const A_Const
 
typedef struct TypeCast TypeCast
 
typedef struct CollateClause CollateClause
 
typedef enum RoleSpecType RoleSpecType
 
typedef struct RoleSpec RoleSpec
 
typedef struct FuncCall FuncCall
 
typedef struct A_Star A_Star
 
typedef struct A_Indices A_Indices
 
typedef struct A_Indirection A_Indirection
 
typedef struct A_ArrayExpr A_ArrayExpr
 
typedef struct ResTarget ResTarget
 
typedef struct MultiAssignRef MultiAssignRef
 
typedef struct SortBy SortBy
 
typedef struct WindowDef WindowDef
 
typedef struct RangeSubselect RangeSubselect
 
typedef struct RangeFunction RangeFunction
 
typedef struct RangeTableFunc RangeTableFunc
 
typedef struct RangeTableFuncCol RangeTableFuncCol
 
typedef struct RangeTableSample RangeTableSample
 
typedef struct ColumnDef ColumnDef
 
typedef struct TableLikeClause TableLikeClause
 
typedef enum TableLikeOption TableLikeOption
 
typedef struct IndexElem IndexElem
 
typedef enum DefElemAction DefElemAction
 
typedef struct DefElem DefElem
 
typedef struct LockingClause LockingClause
 
typedef struct XmlSerialize XmlSerialize
 
typedef struct PartitionElem PartitionElem
 
typedef struct PartitionSpec PartitionSpec
 
typedef struct PartitionBoundSpec PartitionBoundSpec
 
typedef enum
PartitionRangeDatumKind 
PartitionRangeDatumKind
 
typedef struct PartitionRangeDatum PartitionRangeDatum
 
typedef struct PartitionCmd PartitionCmd
 
typedef enum RTEKind RTEKind
 
typedef struct RangeTblEntry RangeTblEntry
 
typedef struct RangeTblFunction RangeTblFunction
 
typedef struct TableSampleClause TableSampleClause
 
typedef enum WCOKind WCOKind
 
typedef struct WithCheckOption WithCheckOption
 
typedef struct SortGroupClause SortGroupClause
 
typedef struct GroupingSet GroupingSet
 
typedef struct WindowClause WindowClause
 
typedef struct RowMarkClause RowMarkClause
 
typedef struct WithClause WithClause
 
typedef struct InferClause InferClause
 
typedef struct OnConflictClause OnConflictClause
 
typedef struct CommonTableExpr CommonTableExpr
 
typedef struct TriggerTransition TriggerTransition
 
typedef struct RawStmt RawStmt
 
typedef struct InsertStmt InsertStmt
 
typedef struct DeleteStmt DeleteStmt
 
typedef struct UpdateStmt UpdateStmt
 
typedef enum SetOperation SetOperation
 
typedef struct SelectStmt SelectStmt
 
typedef struct SetOperationStmt SetOperationStmt
 
typedef enum ObjectType ObjectType
 
typedef struct CreateSchemaStmt CreateSchemaStmt
 
typedef enum DropBehavior DropBehavior
 
typedef struct AlterTableStmt AlterTableStmt
 
typedef enum AlterTableType AlterTableType
 
typedef struct ReplicaIdentityStmt ReplicaIdentityStmt
 
typedef struct AlterTableCmd AlterTableCmd
 
typedef struct AlterCollationStmt AlterCollationStmt
 
typedef struct AlterDomainStmt AlterDomainStmt
 
typedef enum GrantTargetType GrantTargetType
 
typedef enum GrantObjectType GrantObjectType
 
typedef struct GrantStmt GrantStmt
 
typedef struct ObjectWithArgs ObjectWithArgs
 
typedef struct AccessPriv AccessPriv
 
typedef struct GrantRoleStmt GrantRoleStmt
 
typedef struct
AlterDefaultPrivilegesStmt 
AlterDefaultPrivilegesStmt
 
typedef struct CopyStmt CopyStmt
 
typedef struct VariableSetStmt VariableSetStmt
 
typedef struct VariableShowStmt VariableShowStmt
 
typedef struct CreateStmt CreateStmt
 
typedef enum ConstrType ConstrType
 
typedef struct Constraint Constraint
 
typedef struct CreateTableSpaceStmt CreateTableSpaceStmt
 
typedef struct DropTableSpaceStmt DropTableSpaceStmt
 
typedef struct
AlterTableSpaceOptionsStmt 
AlterTableSpaceOptionsStmt
 
typedef struct
AlterTableMoveAllStmt 
AlterTableMoveAllStmt
 
typedef struct CreateExtensionStmt CreateExtensionStmt
 
typedef struct AlterExtensionStmt AlterExtensionStmt
 
typedef struct
AlterExtensionContentsStmt 
AlterExtensionContentsStmt
 
typedef struct CreateFdwStmt CreateFdwStmt
 
typedef struct AlterFdwStmt AlterFdwStmt
 
typedef struct
CreateForeignServerStmt 
CreateForeignServerStmt
 
typedef struct
AlterForeignServerStmt 
AlterForeignServerStmt
 
typedef struct
CreateForeignTableStmt 
CreateForeignTableStmt
 
typedef struct
CreateUserMappingStmt 
CreateUserMappingStmt
 
typedef struct AlterUserMappingStmt AlterUserMappingStmt
 
typedef struct DropUserMappingStmt DropUserMappingStmt
 
typedef enum
ImportForeignSchemaType 
ImportForeignSchemaType
 
typedef struct
ImportForeignSchemaStmt 
ImportForeignSchemaStmt
 
typedef struct CreatePolicyStmt CreatePolicyStmt
 
typedef struct AlterPolicyStmt AlterPolicyStmt
 
typedef struct CreateAmStmt CreateAmStmt
 
typedef struct CreateTrigStmt CreateTrigStmt
 
typedef struct CreateEventTrigStmt CreateEventTrigStmt
 
typedef struct AlterEventTrigStmt AlterEventTrigStmt
 
typedef struct CreatePLangStmt CreatePLangStmt
 
typedef enum RoleStmtType RoleStmtType
 
typedef struct CreateRoleStmt CreateRoleStmt
 
typedef struct AlterRoleStmt AlterRoleStmt
 
typedef struct AlterRoleSetStmt AlterRoleSetStmt
 
typedef struct DropRoleStmt DropRoleStmt
 
typedef struct CreateSeqStmt CreateSeqStmt
 
typedef struct AlterSeqStmt AlterSeqStmt
 
typedef struct DefineStmt DefineStmt
 
typedef struct CreateDomainStmt CreateDomainStmt
 
typedef struct CreateOpClassStmt CreateOpClassStmt
 
typedef struct CreateOpClassItem CreateOpClassItem
 
typedef struct CreateOpFamilyStmt CreateOpFamilyStmt
 
typedef struct AlterOpFamilyStmt AlterOpFamilyStmt
 
typedef struct DropStmt DropStmt
 
typedef struct TruncateStmt TruncateStmt
 
typedef struct CommentStmt CommentStmt
 
typedef struct SecLabelStmt SecLabelStmt
 
typedef struct DeclareCursorStmt DeclareCursorStmt
 
typedef struct ClosePortalStmt ClosePortalStmt
 
typedef enum FetchDirection FetchDirection
 
typedef struct FetchStmt FetchStmt
 
typedef struct IndexStmt IndexStmt
 
typedef struct CreateStatsStmt CreateStatsStmt
 
typedef struct CreateFunctionStmt CreateFunctionStmt
 
typedef enum FunctionParameterMode FunctionParameterMode
 
typedef struct FunctionParameter FunctionParameter
 
typedef struct AlterFunctionStmt AlterFunctionStmt
 
typedef struct DoStmt DoStmt
 
typedef struct InlineCodeBlock InlineCodeBlock
 
typedef struct RenameStmt RenameStmt
 
typedef struct
AlterObjectDependsStmt 
AlterObjectDependsStmt
 
typedef struct
AlterObjectSchemaStmt 
AlterObjectSchemaStmt
 
typedef struct AlterOwnerStmt AlterOwnerStmt
 
typedef struct AlterOperatorStmt AlterOperatorStmt
 
typedef struct RuleStmt RuleStmt
 
typedef struct NotifyStmt NotifyStmt
 
typedef struct ListenStmt ListenStmt
 
typedef struct UnlistenStmt UnlistenStmt
 
typedef enum TransactionStmtKind TransactionStmtKind
 
typedef struct TransactionStmt TransactionStmt
 
typedef struct CompositeTypeStmt CompositeTypeStmt
 
typedef struct CreateEnumStmt CreateEnumStmt
 
typedef struct CreateRangeStmt CreateRangeStmt
 
typedef struct AlterEnumStmt AlterEnumStmt
 
typedef enum ViewCheckOption ViewCheckOption
 
typedef struct ViewStmt ViewStmt
 
typedef struct LoadStmt LoadStmt
 
typedef struct CreatedbStmt CreatedbStmt
 
typedef struct AlterDatabaseStmt AlterDatabaseStmt
 
typedef struct AlterDatabaseSetStmt AlterDatabaseSetStmt
 
typedef struct DropdbStmt DropdbStmt
 
typedef struct AlterSystemStmt AlterSystemStmt
 
typedef struct ClusterStmt ClusterStmt
 
typedef enum VacuumOption VacuumOption
 
typedef struct VacuumStmt VacuumStmt
 
typedef struct ExplainStmt ExplainStmt
 
typedef struct CreateTableAsStmt CreateTableAsStmt
 
typedef struct RefreshMatViewStmt RefreshMatViewStmt
 
typedef struct CheckPointStmt CheckPointStmt
 
typedef enum DiscardMode DiscardMode
 
typedef struct DiscardStmt DiscardStmt
 
typedef struct LockStmt LockStmt
 
typedef struct ConstraintsSetStmt ConstraintsSetStmt
 
typedef enum ReindexObjectType ReindexObjectType
 
typedef struct ReindexStmt ReindexStmt
 
typedef struct CreateConversionStmt CreateConversionStmt
 
typedef struct CreateCastStmt CreateCastStmt
 
typedef struct CreateTransformStmt CreateTransformStmt
 
typedef struct PrepareStmt PrepareStmt
 
typedef struct ExecuteStmt ExecuteStmt
 
typedef struct DeallocateStmt DeallocateStmt
 
typedef struct DropOwnedStmt DropOwnedStmt
 
typedef struct ReassignOwnedStmt ReassignOwnedStmt
 
typedef struct
AlterTSDictionaryStmt 
AlterTSDictionaryStmt
 
typedef enum AlterTSConfigType AlterTSConfigType
 
typedef struct
AlterTSConfigurationStmt 
AlterTSConfigurationStmt
 
typedef struct
CreatePublicationStmt 
CreatePublicationStmt
 
typedef struct AlterPublicationStmt AlterPublicationStmt
 
typedef struct
CreateSubscriptionStmt 
CreateSubscriptionStmt
 
typedef enum AlterSubscriptionType AlterSubscriptionType
 
typedef struct
AlterSubscriptionStmt 
AlterSubscriptionStmt
 
typedef struct DropSubscriptionStmt DropSubscriptionStmt
 

Enumerations

enum  OverridingKind { OVERRIDING_NOT_SET = 0, OVERRIDING_USER_VALUE, OVERRIDING_SYSTEM_VALUE }
 
enum  QuerySource {
  QSRC_ORIGINAL, QSRC_PARSER, QSRC_INSTEAD_RULE, QSRC_QUAL_INSTEAD_RULE,
  QSRC_NON_INSTEAD_RULE
}
 
enum  SortByDir { SORTBY_DEFAULT, SORTBY_ASC, SORTBY_DESC, SORTBY_USING }
 
enum  SortByNulls { SORTBY_NULLS_DEFAULT, SORTBY_NULLS_FIRST, SORTBY_NULLS_LAST }
 
enum  A_Expr_Kind {
  AEXPR_OP, AEXPR_OP_ANY, AEXPR_OP_ALL, AEXPR_DISTINCT,
  AEXPR_NOT_DISTINCT, AEXPR_NULLIF, AEXPR_OF, AEXPR_IN,
  AEXPR_LIKE, AEXPR_ILIKE, AEXPR_SIMILAR, AEXPR_BETWEEN,
  AEXPR_NOT_BETWEEN, AEXPR_BETWEEN_SYM, AEXPR_NOT_BETWEEN_SYM, AEXPR_PAREN
}
 
enum  RoleSpecType { ROLESPEC_CSTRING, ROLESPEC_CURRENT_USER, ROLESPEC_SESSION_USER, ROLESPEC_PUBLIC }
 
enum  TableLikeOption {
  CREATE_TABLE_LIKE_DEFAULTS = 1 << 0, CREATE_TABLE_LIKE_CONSTRAINTS = 1 << 1, CREATE_TABLE_LIKE_IDENTITY = 1 << 2, CREATE_TABLE_LIKE_INDEXES = 1 << 3,
  CREATE_TABLE_LIKE_STORAGE = 1 << 4, CREATE_TABLE_LIKE_COMMENTS = 1 << 5, CREATE_TABLE_LIKE_ALL = PG_INT32_MAX
}
 
enum  DefElemAction { DEFELEM_UNSPEC, DEFELEM_SET, DEFELEM_ADD, DEFELEM_DROP }
 
enum  PartitionRangeDatumKind { PARTITION_RANGE_DATUM_MINVALUE = -1, PARTITION_RANGE_DATUM_VALUE = 0, PARTITION_RANGE_DATUM_MAXVALUE = 1 }
 
enum  RTEKind {
  RTE_RELATION, RTE_SUBQUERY, RTE_JOIN, RTE_FUNCTION,
  RTE_TABLEFUNC, RTE_VALUES, RTE_CTE, RTE_NAMEDTUPLESTORE
}
 
enum  WCOKind { WCO_VIEW_CHECK, WCO_RLS_INSERT_CHECK, WCO_RLS_UPDATE_CHECK, WCO_RLS_CONFLICT_CHECK }
 
enum  GroupingSetKind {
  GROUPING_SET_EMPTY, GROUPING_SET_SIMPLE, GROUPING_SET_ROLLUP, GROUPING_SET_CUBE,
  GROUPING_SET_SETS
}
 
enum  SetOperation { SETOP_NONE = 0, SETOP_UNION, SETOP_INTERSECT, SETOP_EXCEPT }
 
enum  ObjectType {
  OBJECT_ACCESS_METHOD, OBJECT_AGGREGATE, OBJECT_AMOP, OBJECT_AMPROC,
  OBJECT_ATTRIBUTE, OBJECT_CAST, OBJECT_COLUMN, OBJECT_COLLATION,
  OBJECT_CONVERSION, OBJECT_DATABASE, OBJECT_DEFAULT, OBJECT_DEFACL,
  OBJECT_DOMAIN, OBJECT_DOMCONSTRAINT, OBJECT_EVENT_TRIGGER, OBJECT_EXTENSION,
  OBJECT_FDW, OBJECT_FOREIGN_SERVER, OBJECT_FOREIGN_TABLE, OBJECT_FUNCTION,
  OBJECT_INDEX, OBJECT_LANGUAGE, OBJECT_LARGEOBJECT, OBJECT_MATVIEW,
  OBJECT_OPCLASS, OBJECT_OPERATOR, OBJECT_OPFAMILY, OBJECT_POLICY,
  OBJECT_PUBLICATION, OBJECT_PUBLICATION_REL, OBJECT_ROLE, OBJECT_RULE,
  OBJECT_SCHEMA, OBJECT_SEQUENCE, OBJECT_SUBSCRIPTION, OBJECT_STATISTIC_EXT,
  OBJECT_TABCONSTRAINT, OBJECT_TABLE, OBJECT_TABLESPACE, OBJECT_TRANSFORM,
  OBJECT_TRIGGER, OBJECT_TSCONFIGURATION, OBJECT_TSDICTIONARY, OBJECT_TSPARSER,
  OBJECT_TSTEMPLATE, OBJECT_TYPE, OBJECT_USER_MAPPING, OBJECT_VIEW
}
 
enum  DropBehavior { DROP_RESTRICT, DROP_CASCADE }
 
enum  AlterTableType {
  AT_AddColumn, AT_AddColumnRecurse, AT_AddColumnToView, AT_ColumnDefault,
  AT_DropNotNull, AT_SetNotNull, AT_SetStatistics, AT_SetOptions,
  AT_ResetOptions, AT_SetStorage, AT_DropColumn, AT_DropColumnRecurse,
  AT_AddIndex, AT_ReAddIndex, AT_AddConstraint, AT_AddConstraintRecurse,
  AT_ReAddConstraint, AT_AlterConstraint, AT_ValidateConstraint, AT_ValidateConstraintRecurse,
  AT_ProcessedConstraint, AT_AddIndexConstraint, AT_DropConstraint, AT_DropConstraintRecurse,
  AT_ReAddComment, AT_AlterColumnType, AT_AlterColumnGenericOptions, AT_ChangeOwner,
  AT_ClusterOn, AT_DropCluster, AT_SetLogged, AT_SetUnLogged,
  AT_AddOids, AT_AddOidsRecurse, AT_DropOids, AT_SetTableSpace,
  AT_SetRelOptions, AT_ResetRelOptions, AT_ReplaceRelOptions, AT_EnableTrig,
  AT_EnableAlwaysTrig, AT_EnableReplicaTrig, AT_DisableTrig, AT_EnableTrigAll,
  AT_DisableTrigAll, AT_EnableTrigUser, AT_DisableTrigUser, AT_EnableRule,
  AT_EnableAlwaysRule, AT_EnableReplicaRule, AT_DisableRule, AT_AddInherit,
  AT_DropInherit, AT_AddOf, AT_DropOf, AT_ReplicaIdentity,
  AT_EnableRowSecurity, AT_DisableRowSecurity, AT_ForceRowSecurity, AT_NoForceRowSecurity,
  AT_GenericOptions, AT_AttachPartition, AT_DetachPartition, AT_AddIdentity,
  AT_SetIdentity, AT_DropIdentity
}
 
enum  GrantTargetType { ACL_TARGET_OBJECT, ACL_TARGET_ALL_IN_SCHEMA, ACL_TARGET_DEFAULTS }
 
enum  GrantObjectType {
  ACL_OBJECT_COLUMN, ACL_OBJECT_RELATION, ACL_OBJECT_SEQUENCE, ACL_OBJECT_DATABASE,
  ACL_OBJECT_DOMAIN, ACL_OBJECT_FDW, ACL_OBJECT_FOREIGN_SERVER, ACL_OBJECT_FUNCTION,
  ACL_OBJECT_LANGUAGE, ACL_OBJECT_LARGEOBJECT, ACL_OBJECT_NAMESPACE, ACL_OBJECT_TABLESPACE,
  ACL_OBJECT_TYPE
}
 
enum  VariableSetKind {
  VAR_SET_VALUE, VAR_SET_DEFAULT, VAR_SET_CURRENT, VAR_SET_MULTI,
  VAR_RESET, VAR_RESET_ALL
}
 
enum  ConstrType {
  CONSTR_NULL, CONSTR_NOTNULL, CONSTR_DEFAULT, CONSTR_IDENTITY,
  CONSTR_CHECK, CONSTR_PRIMARY, CONSTR_UNIQUE, CONSTR_EXCLUSION,
  CONSTR_FOREIGN, CONSTR_ATTR_DEFERRABLE, CONSTR_ATTR_NOT_DEFERRABLE, CONSTR_ATTR_DEFERRED,
  CONSTR_ATTR_IMMEDIATE
}
 
enum  ImportForeignSchemaType { FDW_IMPORT_SCHEMA_ALL, FDW_IMPORT_SCHEMA_LIMIT_TO, FDW_IMPORT_SCHEMA_EXCEPT }
 
enum  RoleStmtType { ROLESTMT_ROLE, ROLESTMT_USER, ROLESTMT_GROUP }
 
enum  FetchDirection { FETCH_FORWARD, FETCH_BACKWARD, FETCH_ABSOLUTE, FETCH_RELATIVE }
 
enum  FunctionParameterMode {
  FUNC_PARAM_IN = 'i', FUNC_PARAM_OUT = 'o', FUNC_PARAM_INOUT = 'b', FUNC_PARAM_VARIADIC = 'v',
  FUNC_PARAM_TABLE = 't'
}
 
enum  TransactionStmtKind {
  TRANS_STMT_BEGIN, TRANS_STMT_START, TRANS_STMT_COMMIT, TRANS_STMT_ROLLBACK,
  TRANS_STMT_SAVEPOINT, TRANS_STMT_RELEASE, TRANS_STMT_ROLLBACK_TO, TRANS_STMT_PREPARE,
  TRANS_STMT_COMMIT_PREPARED, TRANS_STMT_ROLLBACK_PREPARED
}
 
enum  ViewCheckOption { NO_CHECK_OPTION, LOCAL_CHECK_OPTION, CASCADED_CHECK_OPTION }
 
enum  VacuumOption {
  VACOPT_VACUUM = 1 << 0, VACOPT_ANALYZE = 1 << 1, VACOPT_VERBOSE = 1 << 2, VACOPT_FREEZE = 1 << 3,
  VACOPT_FULL = 1 << 4, VACOPT_NOWAIT = 1 << 5, VACOPT_SKIPTOAST = 1 << 6, VACOPT_DISABLE_PAGE_SKIPPING = 1 << 7
}
 
enum  DiscardMode { DISCARD_ALL, DISCARD_PLANS, DISCARD_SEQUENCES, DISCARD_TEMP }
 
enum  ReindexObjectType {
  REINDEX_OBJECT_INDEX, REINDEX_OBJECT_TABLE, REINDEX_OBJECT_SCHEMA, REINDEX_OBJECT_SYSTEM,
  REINDEX_OBJECT_DATABASE
}
 
enum  AlterTSConfigType {
  ALTER_TSCONFIG_ADD_MAPPING, ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN, ALTER_TSCONFIG_REPLACE_DICT, ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN,
  ALTER_TSCONFIG_DROP_MAPPING
}
 
enum  AlterSubscriptionType {
  ALTER_SUBSCRIPTION_OPTIONS, ALTER_SUBSCRIPTION_CONNECTION, ALTER_SUBSCRIPTION_PUBLICATION, ALTER_SUBSCRIPTION_REFRESH,
  ALTER_SUBSCRIPTION_ENABLED
}
 

Macro Definition Documentation

#define ACL_SELECT_FOR_UPDATE   ACL_UPDATE

Definition at line 88 of file parsenodes.h.

Referenced by markQueryForLocking(), and transformLockingClause().

#define CURSOR_OPT_BINARY   0x0001 /* BINARY */

Definition at line 2622 of file parsenodes.h.

Referenced by exec_simple_query(), and pg_cursor().

#define CURSOR_OPT_CUSTOM_PLAN   0x0080 /* force use of custom plan */

Definition at line 2630 of file parsenodes.h.

Referenced by choose_custom_plan().

#define CURSOR_OPT_FAST_PLAN   0x0020 /* prefer fast-start plan */

Definition at line 2628 of file parsenodes.h.

Referenced by standard_planner().

#define CURSOR_OPT_GENERIC_PLAN   0x0040 /* force use of generic plan */

Definition at line 2629 of file parsenodes.h.

Referenced by choose_custom_plan().

#define CURSOR_OPT_HOLD   0x0010 /* WITH HOLD */
#define CURSOR_OPT_INSENSITIVE   0x0008 /* INSENSITIVE */

Definition at line 2625 of file parsenodes.h.

Referenced by transformDeclareCursorStmt().

#define CURSOR_OPT_NO_SCROLL   0x0004 /* NO SCROLL explicitly given */
#define CURSOR_OPT_SCROLL   0x0002 /* SCROLL explicitly given */
#define FETCH_ALL   LONG_MAX
#define FKCONSTR_ACTION_CASCADE   'c'
#define FKCONSTR_ACTION_NOACTION   'a'
#define FKCONSTR_ACTION_RESTRICT   'r'
#define FKCONSTR_ACTION_SETDEFAULT   'd'
#define FKCONSTR_ACTION_SETNULL   'n'
#define FRAMEOPTION_BETWEEN   0x00008 /* BETWEEN given? */

Definition at line 507 of file parsenodes.h.

Referenced by get_rule_windowspec().

#define FRAMEOPTION_DEFAULTS
Value:
#define FRAMEOPTION_START_UNBOUNDED_PRECEDING
Definition: parsenodes.h:508
#define FRAMEOPTION_END_CURRENT_ROW
Definition: parsenodes.h:513
#define FRAMEOPTION_RANGE
Definition: parsenodes.h:505

Definition at line 524 of file parsenodes.h.

Referenced by transformWindowDefinitions(), and transformWindowFuncCall().

#define FRAMEOPTION_END_CURRENT_ROW   0x00200 /* end is C. R. */
#define FRAMEOPTION_END_UNBOUNDED_FOLLOWING   0x00080 /* end is U. F. */

Definition at line 511 of file parsenodes.h.

Referenced by eval_windowaggregates(), get_rule_windowspec(), and update_frametailpos().

#define FRAMEOPTION_END_UNBOUNDED_PRECEDING   0x00020 /* (disallowed) */

Definition at line 509 of file parsenodes.h.

#define FRAMEOPTION_END_VALUE_FOLLOWING   0x02000 /* end is V. F. */

Definition at line 517 of file parsenodes.h.

Referenced by get_rule_windowspec().

#define FRAMEOPTION_END_VALUE_PRECEDING   0x00800 /* end is V. P. */

Definition at line 515 of file parsenodes.h.

Referenced by get_rule_windowspec(), row_is_in_frame(), and update_frametailpos().

#define FRAMEOPTION_NONDEFAULT   0x00001 /* any specified? */

Definition at line 504 of file parsenodes.h.

Referenced by get_rule_windowspec().

#define FRAMEOPTION_RANGE   0x00002 /* RANGE behavior */
#define FRAMEOPTION_ROWS   0x00004 /* ROWS behavior */
#define FRAMEOPTION_START_CURRENT_ROW   0x00100 /* start is C. R. */

Definition at line 512 of file parsenodes.h.

Referenced by get_rule_windowspec(), row_is_in_frame(), and update_frameheadpos().

#define FRAMEOPTION_START_UNBOUNDED_FOLLOWING   0x00040 /* (disallowed) */

Definition at line 510 of file parsenodes.h.

#define FRAMEOPTION_START_UNBOUNDED_PRECEDING   0x00010 /* start is U. P. */
#define FRAMEOPTION_START_VALUE_FOLLOWING   0x01000 /* start is V. F. */

Definition at line 516 of file parsenodes.h.

Referenced by get_rule_windowspec().

#define FRAMEOPTION_START_VALUE_PRECEDING   0x00400 /* start is V. P. */

Definition at line 514 of file parsenodes.h.

Referenced by get_rule_windowspec(), row_is_in_frame(), and update_frameheadpos().

#define GetCTETargetList (   cte)
Value:
(AssertMacro(IsA((cte)->ctequery, Query)), \
((Query *) (cte)->ctequery)->commandType == CMD_SELECT ? \
((Query *) (cte)->ctequery)->targetList : \
((Query *) (cte)->ctequery)->returningList)
#define IsA(nodeptr, _type_)
Definition: nodes.h:560
#define AssertMacro(condition)
Definition: c.h:676

Definition at line 1378 of file parsenodes.h.

Referenced by analyzeCTE(), expandRecordVariable(), get_name_for_var_field(), and markTargetListOrigin().

#define N_ACL_RIGHTS   12 /* 1 plus the last 1<<x */

Definition at line 85 of file parsenodes.h.

Referenced by aclexplode(), and aclitemout().

#define OPCLASS_ITEM_FUNCTION   2

Definition at line 2522 of file parsenodes.h.

Referenced by AlterOpFamilyAdd(), AlterOpFamilyDrop(), and DefineOpClass().

#define OPCLASS_ITEM_OPERATOR   1

Definition at line 2521 of file parsenodes.h.

Referenced by AlterOpFamilyAdd(), AlterOpFamilyDrop(), and DefineOpClass().

#define OPCLASS_ITEM_STORAGETYPE   3

Definition at line 2523 of file parsenodes.h.

Referenced by AlterOpFamilyAdd(), AlterOpFamilyDrop(), and DefineOpClass().

#define REINDEXOPT_VERBOSE   1 << 0 /* print progress info */

Definition at line 3208 of file parsenodes.h.

Referenced by reindex_index(), and ReindexMultipleTables().

Typedef Documentation

Definition at line 70 of file parsenodes.h.

Enumeration Type Documentation

Enumerator
AEXPR_OP 
AEXPR_OP_ANY 
AEXPR_OP_ALL 
AEXPR_DISTINCT 
AEXPR_NOT_DISTINCT 
AEXPR_NULLIF 
AEXPR_OF 
AEXPR_IN 
AEXPR_LIKE 
AEXPR_ILIKE 
AEXPR_SIMILAR 
AEXPR_BETWEEN 
AEXPR_NOT_BETWEEN 
AEXPR_BETWEEN_SYM 
AEXPR_NOT_BETWEEN_SYM 
AEXPR_PAREN 

Definition at line 251 of file parsenodes.h.

252 {
253  AEXPR_OP, /* normal operator */
254  AEXPR_OP_ANY, /* scalar op ANY (array) */
255  AEXPR_OP_ALL, /* scalar op ALL (array) */
256  AEXPR_DISTINCT, /* IS DISTINCT FROM - name must be "=" */
257  AEXPR_NOT_DISTINCT, /* IS NOT DISTINCT FROM - name must be "=" */
258  AEXPR_NULLIF, /* NULLIF - name must be "=" */
259  AEXPR_OF, /* IS [NOT] OF - name must be "=" or "<>" */
260  AEXPR_IN, /* [NOT] IN - name must be "=" or "<>" */
261  AEXPR_LIKE, /* [NOT] LIKE - name must be "~~" or "!~~" */
262  AEXPR_ILIKE, /* [NOT] ILIKE - name must be "~~*" or "!~~*" */
263  AEXPR_SIMILAR, /* [NOT] SIMILAR - name must be "~" or "!~" */
264  AEXPR_BETWEEN, /* name must be "BETWEEN" */
265  AEXPR_NOT_BETWEEN, /* name must be "NOT BETWEEN" */
266  AEXPR_BETWEEN_SYM, /* name must be "BETWEEN SYMMETRIC" */
267  AEXPR_NOT_BETWEEN_SYM, /* name must be "NOT BETWEEN SYMMETRIC" */
268  AEXPR_PAREN /* nameless dummy node for parentheses */
269 } A_Expr_Kind;
A_Expr_Kind
Definition: parsenodes.h:251
Enumerator
ALTER_SUBSCRIPTION_OPTIONS 
ALTER_SUBSCRIPTION_CONNECTION 
ALTER_SUBSCRIPTION_PUBLICATION 
ALTER_SUBSCRIPTION_REFRESH 
ALTER_SUBSCRIPTION_ENABLED 

Definition at line 3400 of file parsenodes.h.

Enumerator
AT_AddColumn 
AT_AddColumnRecurse 
AT_AddColumnToView 
AT_ColumnDefault 
AT_DropNotNull 
AT_SetNotNull 
AT_SetStatistics 
AT_SetOptions 
AT_ResetOptions 
AT_SetStorage 
AT_DropColumn 
AT_DropColumnRecurse 
AT_AddIndex 
AT_ReAddIndex 
AT_AddConstraint 
AT_AddConstraintRecurse 
AT_ReAddConstraint 
AT_AlterConstraint 
AT_ValidateConstraint 
AT_ValidateConstraintRecurse 
AT_ProcessedConstraint 
AT_AddIndexConstraint 
AT_DropConstraint 
AT_DropConstraintRecurse 
AT_ReAddComment 
AT_AlterColumnType 
AT_AlterColumnGenericOptions 
AT_ChangeOwner 
AT_ClusterOn 
AT_DropCluster 
AT_SetLogged 
AT_SetUnLogged 
AT_AddOids 
AT_AddOidsRecurse 
AT_DropOids 
AT_SetTableSpace 
AT_SetRelOptions 
AT_ResetRelOptions 
AT_ReplaceRelOptions 
AT_EnableTrig 
AT_EnableAlwaysTrig 
AT_EnableReplicaTrig 
AT_DisableTrig 
AT_EnableTrigAll 
AT_DisableTrigAll 
AT_EnableTrigUser 
AT_DisableTrigUser 
AT_EnableRule 
AT_EnableAlwaysRule 
AT_EnableReplicaRule 
AT_DisableRule 
AT_AddInherit 
AT_DropInherit 
AT_AddOf 
AT_DropOf 
AT_ReplicaIdentity 
AT_EnableRowSecurity 
AT_DisableRowSecurity 
AT_ForceRowSecurity 
AT_NoForceRowSecurity 
AT_GenericOptions 
AT_AttachPartition 
AT_DetachPartition 
AT_AddIdentity 
AT_SetIdentity 
AT_DropIdentity 

Definition at line 1691 of file parsenodes.h.

1692 {
1693  AT_AddColumn, /* add column */
1694  AT_AddColumnRecurse, /* internal to commands/tablecmds.c */
1695  AT_AddColumnToView, /* implicitly via CREATE OR REPLACE VIEW */
1696  AT_ColumnDefault, /* alter column default */
1697  AT_DropNotNull, /* alter column drop not null */
1698  AT_SetNotNull, /* alter column set not null */
1699  AT_SetStatistics, /* alter column set statistics */
1700  AT_SetOptions, /* alter column set ( options ) */
1701  AT_ResetOptions, /* alter column reset ( options ) */
1702  AT_SetStorage, /* alter column set storage */
1703  AT_DropColumn, /* drop column */
1704  AT_DropColumnRecurse, /* internal to commands/tablecmds.c */
1705  AT_AddIndex, /* add index */
1706  AT_ReAddIndex, /* internal to commands/tablecmds.c */
1707  AT_AddConstraint, /* add constraint */
1708  AT_AddConstraintRecurse, /* internal to commands/tablecmds.c */
1709  AT_ReAddConstraint, /* internal to commands/tablecmds.c */
1710  AT_AlterConstraint, /* alter constraint */
1711  AT_ValidateConstraint, /* validate constraint */
1712  AT_ValidateConstraintRecurse, /* internal to commands/tablecmds.c */
1713  AT_ProcessedConstraint, /* pre-processed add constraint (local in
1714  * parser/parse_utilcmd.c) */
1715  AT_AddIndexConstraint, /* add constraint using existing index */
1716  AT_DropConstraint, /* drop constraint */
1717  AT_DropConstraintRecurse, /* internal to commands/tablecmds.c */
1718  AT_ReAddComment, /* internal to commands/tablecmds.c */
1719  AT_AlterColumnType, /* alter column type */
1720  AT_AlterColumnGenericOptions, /* alter column OPTIONS (...) */
1721  AT_ChangeOwner, /* change owner */
1722  AT_ClusterOn, /* CLUSTER ON */
1723  AT_DropCluster, /* SET WITHOUT CLUSTER */
1724  AT_SetLogged, /* SET LOGGED */
1725  AT_SetUnLogged, /* SET UNLOGGED */
1726  AT_AddOids, /* SET WITH OIDS */
1727  AT_AddOidsRecurse, /* internal to commands/tablecmds.c */
1728  AT_DropOids, /* SET WITHOUT OIDS */
1729  AT_SetTableSpace, /* SET TABLESPACE */
1730  AT_SetRelOptions, /* SET (...) -- AM specific parameters */
1731  AT_ResetRelOptions, /* RESET (...) -- AM specific parameters */
1732  AT_ReplaceRelOptions, /* replace reloption list in its entirety */
1733  AT_EnableTrig, /* ENABLE TRIGGER name */
1734  AT_EnableAlwaysTrig, /* ENABLE ALWAYS TRIGGER name */
1735  AT_EnableReplicaTrig, /* ENABLE REPLICA TRIGGER name */
1736  AT_DisableTrig, /* DISABLE TRIGGER name */
1737  AT_EnableTrigAll, /* ENABLE TRIGGER ALL */
1738  AT_DisableTrigAll, /* DISABLE TRIGGER ALL */
1739  AT_EnableTrigUser, /* ENABLE TRIGGER USER */
1740  AT_DisableTrigUser, /* DISABLE TRIGGER USER */
1741  AT_EnableRule, /* ENABLE RULE name */
1742  AT_EnableAlwaysRule, /* ENABLE ALWAYS RULE name */
1743  AT_EnableReplicaRule, /* ENABLE REPLICA RULE name */
1744  AT_DisableRule, /* DISABLE RULE name */
1745  AT_AddInherit, /* INHERIT parent */
1746  AT_DropInherit, /* NO INHERIT parent */
1747  AT_AddOf, /* OF <type_name> */
1748  AT_DropOf, /* NOT OF */
1749  AT_ReplicaIdentity, /* REPLICA IDENTITY */
1750  AT_EnableRowSecurity, /* ENABLE ROW SECURITY */
1751  AT_DisableRowSecurity, /* DISABLE ROW SECURITY */
1752  AT_ForceRowSecurity, /* FORCE ROW SECURITY */
1753  AT_NoForceRowSecurity, /* NO FORCE ROW SECURITY */
1754  AT_GenericOptions, /* OPTIONS (...) */
1755  AT_AttachPartition, /* ATTACH PARTITION */
1756  AT_DetachPartition, /* DETACH PARTITION */
1757  AT_AddIdentity, /* ADD IDENTITY */
1758  AT_SetIdentity, /* SET identity column options */
1759  AT_DropIdentity /* DROP IDENTITY */
1760 } AlterTableType;
AlterTableType
Definition: parsenodes.h:1691
Enumerator
ALTER_TSCONFIG_ADD_MAPPING 
ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN 
ALTER_TSCONFIG_REPLACE_DICT 
ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN 
ALTER_TSCONFIG_DROP_MAPPING 

Definition at line 3341 of file parsenodes.h.

enum ConstrType
Enumerator
CONSTR_NULL 
CONSTR_NOTNULL 
CONSTR_DEFAULT 
CONSTR_IDENTITY 
CONSTR_CHECK 
CONSTR_PRIMARY 
CONSTR_UNIQUE 
CONSTR_EXCLUSION 
CONSTR_FOREIGN 
CONSTR_ATTR_DEFERRABLE 
CONSTR_ATTR_NOT_DEFERRABLE 
CONSTR_ATTR_DEFERRED 
CONSTR_ATTR_IMMEDIATE 

Definition at line 2040 of file parsenodes.h.

Enumerator
DEFELEM_UNSPEC 
DEFELEM_SET 
DEFELEM_ADD 
DEFELEM_DROP 

Definition at line 707 of file parsenodes.h.

708 {
709  DEFELEM_UNSPEC, /* no action given */
710  DEFELEM_SET,
711  DEFELEM_ADD,
713 } DefElemAction;
DefElemAction
Definition: parsenodes.h:707
Enumerator
DISCARD_ALL 
DISCARD_PLANS 
DISCARD_SEQUENCES 
DISCARD_TEMP 

Definition at line 3165 of file parsenodes.h.

Enumerator
DROP_RESTRICT 
DROP_CASCADE 

Definition at line 1672 of file parsenodes.h.

1673 {
1674  DROP_RESTRICT, /* drop fails if any dependent objects */
1675  DROP_CASCADE /* remove dependent objects too */
1676 } DropBehavior;
DropBehavior
Definition: parsenodes.h:1672
Enumerator
FETCH_FORWARD 
FETCH_BACKWARD 
FETCH_ABSOLUTE 
FETCH_RELATIVE 

Definition at line 2656 of file parsenodes.h.

2657 {
2658  /* for these, howMany is how many rows to fetch; FETCH_ALL means ALL */
2659  FETCH_FORWARD,
2661  /* for these, howMany indicates a position; only one row is fetched */
2664 } FetchDirection;
FetchDirection
Definition: parsenodes.h:2656
Enumerator
FUNC_PARAM_IN 
FUNC_PARAM_OUT 
FUNC_PARAM_INOUT 
FUNC_PARAM_VARIADIC 
FUNC_PARAM_TABLE 

Definition at line 2741 of file parsenodes.h.

2742 {
2743  /* the assigned enum values appear in pg_proc, don't change 'em! */
2744  FUNC_PARAM_IN = 'i', /* input only */
2745  FUNC_PARAM_OUT = 'o', /* output only */
2746  FUNC_PARAM_INOUT = 'b', /* both */
2747  FUNC_PARAM_VARIADIC = 'v', /* variadic (always input) */
2748  FUNC_PARAM_TABLE = 't' /* table function output column */
FunctionParameterMode
Definition: parsenodes.h:2741
Enumerator
ACL_OBJECT_COLUMN 
ACL_OBJECT_RELATION 
ACL_OBJECT_SEQUENCE 
ACL_OBJECT_DATABASE 
ACL_OBJECT_DOMAIN 
ACL_OBJECT_FDW 
ACL_OBJECT_FOREIGN_SERVER 
ACL_OBJECT_FUNCTION 
ACL_OBJECT_LANGUAGE 
ACL_OBJECT_LARGEOBJECT 
ACL_OBJECT_NAMESPACE 
ACL_OBJECT_TABLESPACE 
ACL_OBJECT_TYPE 

Definition at line 1831 of file parsenodes.h.

1832 {
1833  ACL_OBJECT_COLUMN, /* column */
1834  ACL_OBJECT_RELATION, /* table, view */
1835  ACL_OBJECT_SEQUENCE, /* sequence */
1836  ACL_OBJECT_DATABASE, /* database */
1837  ACL_OBJECT_DOMAIN, /* domain */
1838  ACL_OBJECT_FDW, /* foreign-data wrapper */
1839  ACL_OBJECT_FOREIGN_SERVER, /* foreign server */
1840  ACL_OBJECT_FUNCTION, /* function */
1841  ACL_OBJECT_LANGUAGE, /* procedural language */
1842  ACL_OBJECT_LARGEOBJECT, /* largeobject */
1843  ACL_OBJECT_NAMESPACE, /* namespace */
1844  ACL_OBJECT_TABLESPACE, /* tablespace */
1845  ACL_OBJECT_TYPE /* type */
1846 } GrantObjectType;
GrantObjectType
Definition: parsenodes.h:1831
Enumerator
ACL_TARGET_OBJECT 
ACL_TARGET_ALL_IN_SCHEMA 
ACL_TARGET_DEFAULTS 

Definition at line 1824 of file parsenodes.h.

1825 {
1826  ACL_TARGET_OBJECT, /* grant on specific named object(s) */
1827  ACL_TARGET_ALL_IN_SCHEMA, /* grant on all objects in given schema(s) */
1828  ACL_TARGET_DEFAULTS /* ALTER DEFAULT PRIVILEGES */
1829 } GrantTargetType;
GrantTargetType
Definition: parsenodes.h:1824
Enumerator
GROUPING_SET_EMPTY 
GROUPING_SET_SIMPLE 
GROUPING_SET_ROLLUP 
GROUPING_SET_CUBE 
GROUPING_SET_SETS 

Definition at line 1241 of file parsenodes.h.

Enumerator
FDW_IMPORT_SCHEMA_ALL 
FDW_IMPORT_SCHEMA_LIMIT_TO 
FDW_IMPORT_SCHEMA_EXCEPT 

Definition at line 2279 of file parsenodes.h.

2280 {
2281  FDW_IMPORT_SCHEMA_ALL, /* all relations wanted */
2282  FDW_IMPORT_SCHEMA_LIMIT_TO, /* include only listed tables in import */
2283  FDW_IMPORT_SCHEMA_EXCEPT /* exclude listed tables from import */
ImportForeignSchemaType
Definition: parsenodes.h:2279
enum ObjectType
Enumerator
OBJECT_ACCESS_METHOD 
OBJECT_AGGREGATE 
OBJECT_AMOP 
OBJECT_AMPROC 
OBJECT_ATTRIBUTE 
OBJECT_CAST 
OBJECT_COLUMN 
OBJECT_COLLATION 
OBJECT_CONVERSION 
OBJECT_DATABASE 
OBJECT_DEFAULT 
OBJECT_DEFACL 
OBJECT_DOMAIN 
OBJECT_DOMCONSTRAINT 
OBJECT_EVENT_TRIGGER 
OBJECT_EXTENSION 
OBJECT_FDW 
OBJECT_FOREIGN_SERVER 
OBJECT_FOREIGN_TABLE 
OBJECT_FUNCTION 
OBJECT_INDEX 
OBJECT_LANGUAGE 
OBJECT_LARGEOBJECT 
OBJECT_MATVIEW 
OBJECT_OPCLASS 
OBJECT_OPERATOR 
OBJECT_OPFAMILY 
OBJECT_POLICY 
OBJECT_PUBLICATION 
OBJECT_PUBLICATION_REL 
OBJECT_ROLE 
OBJECT_RULE 
OBJECT_SCHEMA 
OBJECT_SEQUENCE 
OBJECT_SUBSCRIPTION 
OBJECT_STATISTIC_EXT 
OBJECT_TABCONSTRAINT 
OBJECT_TABLE 
OBJECT_TABLESPACE 
OBJECT_TRANSFORM 
OBJECT_TRIGGER 
OBJECT_TSCONFIGURATION 
OBJECT_TSDICTIONARY 
OBJECT_TSPARSER 
OBJECT_TSTEMPLATE 
OBJECT_TYPE 
OBJECT_USER_MAPPING 
OBJECT_VIEW 

Definition at line 1603 of file parsenodes.h.

1604 {
1607  OBJECT_AMOP,
1608  OBJECT_AMPROC,
1609  OBJECT_ATTRIBUTE, /* type's attribute, when distinct from column */
1610  OBJECT_CAST,
1611  OBJECT_COLUMN,
1616  OBJECT_DEFACL,
1617  OBJECT_DOMAIN,
1621  OBJECT_FDW,
1625  OBJECT_INDEX,
1632  OBJECT_POLICY,
1635  OBJECT_ROLE,
1636  OBJECT_RULE,
1637  OBJECT_SCHEMA,
1642  OBJECT_TABLE,
1650  OBJECT_TYPE,
1652  OBJECT_VIEW
1653 } ObjectType;
ObjectType
Definition: parsenodes.h:1603
Enumerator
OVERRIDING_NOT_SET 
OVERRIDING_USER_VALUE 
OVERRIDING_SYSTEM_VALUE 

Definition at line 30 of file parsenodes.h.

Enumerator
PARTITION_RANGE_DATUM_MINVALUE 
PARTITION_RANGE_DATUM_VALUE 
PARTITION_RANGE_DATUM_MAXVALUE 

Definition at line 816 of file parsenodes.h.

817 {
818  PARTITION_RANGE_DATUM_MINVALUE = -1, /* less than any other value */
819  PARTITION_RANGE_DATUM_VALUE = 0, /* a specific (bounded) value */
820  PARTITION_RANGE_DATUM_MAXVALUE = 1 /* greater than any other value */
PartitionRangeDatumKind
Definition: parsenodes.h:816
Enumerator
QSRC_ORIGINAL 
QSRC_PARSER 
QSRC_INSTEAD_RULE 
QSRC_QUAL_INSTEAD_RULE 
QSRC_NON_INSTEAD_RULE 

Definition at line 38 of file parsenodes.h.

39 {
40  QSRC_ORIGINAL, /* original parsetree (explicit query) */
41  QSRC_PARSER, /* added by parse analysis (now unused) */
42  QSRC_INSTEAD_RULE, /* added by unconditional INSTEAD rule */
43  QSRC_QUAL_INSTEAD_RULE, /* added by conditional INSTEAD rule */
44  QSRC_NON_INSTEAD_RULE /* added by non-INSTEAD rule */
45 } QuerySource;
QuerySource
Definition: parsenodes.h:38
Enumerator
REINDEX_OBJECT_INDEX 
REINDEX_OBJECT_TABLE 
REINDEX_OBJECT_SCHEMA 
REINDEX_OBJECT_SYSTEM 
REINDEX_OBJECT_DATABASE 

Definition at line 3210 of file parsenodes.h.

3211 {
3212  REINDEX_OBJECT_INDEX, /* index */
3213  REINDEX_OBJECT_TABLE, /* table or materialized view */
3214  REINDEX_OBJECT_SCHEMA, /* schema */
3215  REINDEX_OBJECT_SYSTEM, /* system catalogs */
3216  REINDEX_OBJECT_DATABASE /* database */
ReindexObjectType
Definition: parsenodes.h:3210
Enumerator
ROLESPEC_CSTRING 
ROLESPEC_CURRENT_USER 
ROLESPEC_SESSION_USER 
ROLESPEC_PUBLIC 

Definition at line 316 of file parsenodes.h.

317 {
318  ROLESPEC_CSTRING, /* role name is stored as a C string */
319  ROLESPEC_CURRENT_USER, /* role spec is CURRENT_USER */
320  ROLESPEC_SESSION_USER, /* role spec is SESSION_USER */
321  ROLESPEC_PUBLIC /* role name is "public" */
322 } RoleSpecType;
RoleSpecType
Definition: parsenodes.h:316
Enumerator
ROLESTMT_ROLE 
ROLESTMT_USER 
ROLESTMT_GROUP 

Definition at line 2416 of file parsenodes.h.

enum RTEKind
Enumerator
RTE_RELATION 
RTE_SUBQUERY 
RTE_JOIN 
RTE_FUNCTION 
RTE_TABLEFUNC 
RTE_VALUES 
RTE_CTE 
RTE_NAMEDTUPLESTORE 

Definition at line 928 of file parsenodes.h.

929 {
930  RTE_RELATION, /* ordinary relation reference */
931  RTE_SUBQUERY, /* subquery in FROM */
932  RTE_JOIN, /* join */
933  RTE_FUNCTION, /* function in FROM */
934  RTE_TABLEFUNC, /* TableFunc(.., column list) */
935  RTE_VALUES, /* VALUES (<exprlist>), (<exprlist>), ... */
936  RTE_CTE, /* common table expr (WITH list element) */
937  RTE_NAMEDTUPLESTORE /* tuplestore, e.g. for AFTER triggers */
938 } RTEKind;
RTEKind
Definition: parsenodes.h:928
Enumerator
SETOP_NONE 
SETOP_UNION 
SETOP_INTERSECT 
SETOP_EXCEPT 

Definition at line 1490 of file parsenodes.h.

enum SortByDir
Enumerator
SORTBY_DEFAULT 
SORTBY_ASC 
SORTBY_DESC 
SORTBY_USING 

Definition at line 48 of file parsenodes.h.

49 {
51  SORTBY_ASC,
53  SORTBY_USING /* not allowed in CREATE INDEX ... */
54 } SortByDir;
SortByDir
Definition: parsenodes.h:48
Enumerator
SORTBY_NULLS_DEFAULT 
SORTBY_NULLS_FIRST 
SORTBY_NULLS_LAST 

Definition at line 56 of file parsenodes.h.

Enumerator
CREATE_TABLE_LIKE_DEFAULTS 
CREATE_TABLE_LIKE_CONSTRAINTS 
CREATE_TABLE_LIKE_IDENTITY 
CREATE_TABLE_LIKE_INDEXES 
CREATE_TABLE_LIKE_STORAGE 
CREATE_TABLE_LIKE_COMMENTS 
CREATE_TABLE_LIKE_ALL 

Definition at line 667 of file parsenodes.h.

Enumerator
TRANS_STMT_BEGIN 
TRANS_STMT_START 
TRANS_STMT_COMMIT 
TRANS_STMT_ROLLBACK 
TRANS_STMT_SAVEPOINT 
TRANS_STMT_RELEASE 
TRANS_STMT_ROLLBACK_TO 
TRANS_STMT_PREPARE 
TRANS_STMT_COMMIT_PREPARED 
TRANS_STMT_ROLLBACK_PREPARED 

Definition at line 2909 of file parsenodes.h.

Enumerator
VACOPT_VACUUM 
VACOPT_ANALYZE 
VACOPT_VERBOSE 
VACOPT_FREEZE 
VACOPT_FULL 
VACOPT_NOWAIT 
VACOPT_SKIPTOAST 
VACOPT_DISABLE_PAGE_SKIPPING 

Definition at line 3081 of file parsenodes.h.

3082 {
3083  VACOPT_VACUUM = 1 << 0, /* do VACUUM */
3084  VACOPT_ANALYZE = 1 << 1, /* do ANALYZE */
3085  VACOPT_VERBOSE = 1 << 2, /* print progress info */
3086  VACOPT_FREEZE = 1 << 3, /* FREEZE option */
3087  VACOPT_FULL = 1 << 4, /* FULL (non-concurrent) vacuum */
3088  VACOPT_NOWAIT = 1 << 5, /* don't wait to get lock (autovacuum only) */
3089  VACOPT_SKIPTOAST = 1 << 6, /* don't process the TOAST table, if any */
3090  VACOPT_DISABLE_PAGE_SKIPPING = 1 << 7 /* don't skip any pages */
3091 } VacuumOption;
VacuumOption
Definition: parsenodes.h:3081
Enumerator
VAR_SET_VALUE 
VAR_SET_DEFAULT 
VAR_SET_CURRENT 
VAR_SET_MULTI 
VAR_RESET 
VAR_RESET_ALL 

Definition at line 1952 of file parsenodes.h.

1953 {
1954  VAR_SET_VALUE, /* SET var = value */
1955  VAR_SET_DEFAULT, /* SET var TO DEFAULT */
1956  VAR_SET_CURRENT, /* SET var FROM CURRENT */
1957  VAR_SET_MULTI, /* special case for SET TRANSACTION ... */
1958  VAR_RESET, /* RESET var */
1959  VAR_RESET_ALL /* RESET ALL */
1960 } VariableSetKind;
VariableSetKind
Definition: parsenodes.h:1952
Enumerator
NO_CHECK_OPTION 
LOCAL_CHECK_OPTION 
CASCADED_CHECK_OPTION 

Definition at line 2983 of file parsenodes.h.

enum WCOKind
Enumerator
WCO_VIEW_CHECK 
WCO_RLS_INSERT_CHECK 
WCO_RLS_UPDATE_CHECK 
WCO_RLS_CONFLICT_CHECK 

Definition at line 1105 of file parsenodes.h.

1106 {
1107  WCO_VIEW_CHECK, /* WCO on an auto-updatable view */
1108  WCO_RLS_INSERT_CHECK, /* RLS INSERT WITH CHECK policy */
1109  WCO_RLS_UPDATE_CHECK, /* RLS UPDATE WITH CHECK policy */
1110  WCO_RLS_CONFLICT_CHECK /* RLS ON CONFLICT DO UPDATE USING policy */
1111 } WCOKind;
WCOKind
Definition: parsenodes.h:1105