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 2630 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 2638 of file parsenodes.h.

Referenced by choose_custom_plan().

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

Definition at line 2636 of file parsenodes.h.

Referenced by standard_planner().

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

Definition at line 2637 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 2633 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:665

Definition at line 1384 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 2530 of file parsenodes.h.

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

#define OPCLASS_ITEM_OPERATOR   1

Definition at line 2529 of file parsenodes.h.

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

#define OPCLASS_ITEM_STORAGETYPE   3

Definition at line 2531 of file parsenodes.h.

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

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

Definition at line 3216 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 3408 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 1697 of file parsenodes.h.

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

Enumerator
DROP_RESTRICT 
DROP_CASCADE 

Definition at line 1678 of file parsenodes.h.

1679 {
1680  DROP_RESTRICT, /* drop fails if any dependent objects */
1681  DROP_CASCADE /* remove dependent objects too */
1682 } DropBehavior;
DropBehavior
Definition: parsenodes.h:1678
Enumerator
FETCH_FORWARD 
FETCH_BACKWARD 
FETCH_ABSOLUTE 
FETCH_RELATIVE 

Definition at line 2664 of file parsenodes.h.

2665 {
2666  /* for these, howMany is how many rows to fetch; FETCH_ALL means ALL */
2667  FETCH_FORWARD,
2669  /* for these, howMany indicates a position; only one row is fetched */
2672 } FetchDirection;
FetchDirection
Definition: parsenodes.h:2664
Enumerator
FUNC_PARAM_IN 
FUNC_PARAM_OUT 
FUNC_PARAM_INOUT 
FUNC_PARAM_VARIADIC 
FUNC_PARAM_TABLE 

Definition at line 2749 of file parsenodes.h.

2750 {
2751  /* the assigned enum values appear in pg_proc, don't change 'em! */
2752  FUNC_PARAM_IN = 'i', /* input only */
2753  FUNC_PARAM_OUT = 'o', /* output only */
2754  FUNC_PARAM_INOUT = 'b', /* both */
2755  FUNC_PARAM_VARIADIC = 'v', /* variadic (always input) */
2756  FUNC_PARAM_TABLE = 't' /* table function output column */
FunctionParameterMode
Definition: parsenodes.h:2749
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 1839 of file parsenodes.h.

1840 {
1841  ACL_OBJECT_COLUMN, /* column */
1842  ACL_OBJECT_RELATION, /* table, view */
1843  ACL_OBJECT_SEQUENCE, /* sequence */
1844  ACL_OBJECT_DATABASE, /* database */
1845  ACL_OBJECT_DOMAIN, /* domain */
1846  ACL_OBJECT_FDW, /* foreign-data wrapper */
1847  ACL_OBJECT_FOREIGN_SERVER, /* foreign server */
1848  ACL_OBJECT_FUNCTION, /* function */
1849  ACL_OBJECT_LANGUAGE, /* procedural language */
1850  ACL_OBJECT_LARGEOBJECT, /* largeobject */
1851  ACL_OBJECT_NAMESPACE, /* namespace */
1852  ACL_OBJECT_TABLESPACE, /* tablespace */
1853  ACL_OBJECT_TYPE /* type */
1854 } GrantObjectType;
GrantObjectType
Definition: parsenodes.h:1839
Enumerator
ACL_TARGET_OBJECT 
ACL_TARGET_ALL_IN_SCHEMA 
ACL_TARGET_DEFAULTS 

Definition at line 1832 of file parsenodes.h.

1833 {
1834  ACL_TARGET_OBJECT, /* grant on specific named object(s) */
1835  ACL_TARGET_ALL_IN_SCHEMA, /* grant on all objects in given schema(s) */
1836  ACL_TARGET_DEFAULTS /* ALTER DEFAULT PRIVILEGES */
1837 } GrantTargetType;
GrantTargetType
Definition: parsenodes.h:1832
Enumerator
GROUPING_SET_EMPTY 
GROUPING_SET_SIMPLE 
GROUPING_SET_ROLLUP 
GROUPING_SET_CUBE 
GROUPING_SET_SETS 

Definition at line 1247 of file parsenodes.h.

Enumerator
FDW_IMPORT_SCHEMA_ALL 
FDW_IMPORT_SCHEMA_LIMIT_TO 
FDW_IMPORT_SCHEMA_EXCEPT 

Definition at line 2287 of file parsenodes.h.

2288 {
2289  FDW_IMPORT_SCHEMA_ALL, /* all relations wanted */
2290  FDW_IMPORT_SCHEMA_LIMIT_TO, /* include only listed tables in import */
2291  FDW_IMPORT_SCHEMA_EXCEPT /* exclude listed tables from import */
ImportForeignSchemaType
Definition: parsenodes.h:2287
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 1609 of file parsenodes.h.

1610 {
1613  OBJECT_AMOP,
1614  OBJECT_AMPROC,
1615  OBJECT_ATTRIBUTE, /* type's attribute, when distinct from column */
1616  OBJECT_CAST,
1617  OBJECT_COLUMN,
1622  OBJECT_DEFACL,
1623  OBJECT_DOMAIN,
1627  OBJECT_FDW,
1631  OBJECT_INDEX,
1638  OBJECT_POLICY,
1641  OBJECT_ROLE,
1642  OBJECT_RULE,
1643  OBJECT_SCHEMA,
1648  OBJECT_TABLE,
1656  OBJECT_TYPE,
1658  OBJECT_VIEW
1659 } ObjectType;
ObjectType
Definition: parsenodes.h:1609
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 817 of file parsenodes.h.

818 {
819  PARTITION_RANGE_DATUM_MINVALUE = -1, /* less than any other value */
820  PARTITION_RANGE_DATUM_VALUE = 0, /* a specific (bounded) value */
821  PARTITION_RANGE_DATUM_MAXVALUE = 1 /* greater than any other value */
PartitionRangeDatumKind
Definition: parsenodes.h:817
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 3218 of file parsenodes.h.

3219 {
3220  REINDEX_OBJECT_INDEX, /* index */
3221  REINDEX_OBJECT_TABLE, /* table or materialized view */
3222  REINDEX_OBJECT_SCHEMA, /* schema */
3223  REINDEX_OBJECT_SYSTEM, /* system catalogs */
3224  REINDEX_OBJECT_DATABASE /* database */
ReindexObjectType
Definition: parsenodes.h:3218
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 2424 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 929 of file parsenodes.h.

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

Definition at line 1496 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 2917 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 3089 of file parsenodes.h.

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

Definition at line 1960 of file parsenodes.h.

1961 {
1962  VAR_SET_VALUE, /* SET var = value */
1963  VAR_SET_DEFAULT, /* SET var TO DEFAULT */
1964  VAR_SET_CURRENT, /* SET var FROM CURRENT */
1965  VAR_SET_MULTI, /* special case for SET TRANSACTION ... */
1966  VAR_RESET, /* RESET var */
1967  VAR_RESET_ALL /* RESET ALL */
1968 } VariableSetKind;
VariableSetKind
Definition: parsenodes.h:1960
Enumerator
NO_CHECK_OPTION 
LOCAL_CHECK_OPTION 
CASCADED_CHECK_OPTION 

Definition at line 2991 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 1111 of file parsenodes.h.

1112 {
1113  WCO_VIEW_CHECK, /* WCO on an auto-updatable view */
1114  WCO_RLS_INSERT_CHECK, /* RLS INSERT WITH CHECK policy */
1115  WCO_RLS_UPDATE_CHECK, /* RLS UPDATE WITH CHECK policy */
1116  WCO_RLS_CONFLICT_CHECK /* RLS ON CONFLICT DO UPDATE USING policy */
1117 } WCOKind;
WCOKind
Definition: parsenodes.h:1111