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  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  AlterDomainStmt
 
struct  GrantStmt
 
struct  FuncWithArgs
 
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  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 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 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 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 AlterDomainStmt AlterDomainStmt
 
typedef enum GrantTargetType GrantTargetType
 
typedef enum GrantObjectType GrantObjectType
 
typedef struct GrantStmt GrantStmt
 
typedef struct FuncWithArgs FuncWithArgs
 
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 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 struct
AlterSubscriptionStmt 
AlterSubscriptionStmt
 
typedef struct DropSubscriptionStmt DropSubscriptionStmt
 

Enumerations

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_INDEXES = 1 << 2, CREATE_TABLE_LIKE_STORAGE = 1 << 3,
  CREATE_TABLE_LIKE_COMMENTS = 1 << 4, CREATE_TABLE_LIKE_ALL = PG_INT32_MAX
}
 
enum  DefElemAction { DEFELEM_UNSPEC, DEFELEM_SET, DEFELEM_ADD, DEFELEM_DROP }
 
enum  RTEKind {
  RTE_RELATION, RTE_SUBQUERY, RTE_JOIN, RTE_FUNCTION,
  RTE_VALUES, RTE_CTE
}
 
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_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
}
 
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_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
}
 

Macro Definition Documentation

#define ACL_SELECT_FOR_UPDATE   ACL_UPDATE

Definition at line 81 of file parsenodes.h.

Referenced by markQueryForLocking(), and transformLockingClause().

#define CURSOR_OPT_BINARY   0x0001 /* BINARY */

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

Referenced by choose_custom_plan().

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

Definition at line 2525 of file parsenodes.h.

Referenced by standard_planner().

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

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

Referenced by transformDeclareCursorStmt().

#define CURSOR_OPT_NO_SCROLL   0x0004 /* NO SCROLL explicitly given */
#define CURSOR_OPT_PARALLEL_OK   0x0100 /* parallel mode OK */
#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 499 of file parsenodes.h.

Referenced by get_rule_windowspec().

#define FRAMEOPTION_DEFAULTS
Value:
#define FRAMEOPTION_START_UNBOUNDED_PRECEDING
Definition: parsenodes.h:500
#define FRAMEOPTION_END_CURRENT_ROW
Definition: parsenodes.h:505
#define FRAMEOPTION_RANGE
Definition: parsenodes.h:497

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

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

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

Definition at line 501 of file parsenodes.h.

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

Definition at line 509 of file parsenodes.h.

Referenced by get_rule_windowspec().

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

Definition at line 507 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 496 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 504 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 502 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 508 of file parsenodes.h.

Referenced by get_rule_windowspec().

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

Definition at line 506 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:559
#define AssertMacro(condition)
Definition: c.h:671

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

Referenced by aclexplode(), and aclitemout().

#define OPCLASS_ITEM_FUNCTION   2

Definition at line 2415 of file parsenodes.h.

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

#define OPCLASS_ITEM_OPERATOR   1

Definition at line 2414 of file parsenodes.h.

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

#define OPCLASS_ITEM_STORAGETYPE   3

Definition at line 2416 of file parsenodes.h.

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

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

Definition at line 3096 of file parsenodes.h.

Referenced by reindex_index(), and ReindexMultipleTables().

Typedef Documentation

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

244 {
245  AEXPR_OP, /* normal operator */
246  AEXPR_OP_ANY, /* scalar op ANY (array) */
247  AEXPR_OP_ALL, /* scalar op ALL (array) */
248  AEXPR_DISTINCT, /* IS DISTINCT FROM - name must be "=" */
249  AEXPR_NOT_DISTINCT, /* IS NOT DISTINCT FROM - name must be "=" */
250  AEXPR_NULLIF, /* NULLIF - name must be "=" */
251  AEXPR_OF, /* IS [NOT] OF - name must be "=" or "<>" */
252  AEXPR_IN, /* [NOT] IN - name must be "=" or "<>" */
253  AEXPR_LIKE, /* [NOT] LIKE - name must be "~~" or "!~~" */
254  AEXPR_ILIKE, /* [NOT] ILIKE - name must be "~~*" or "!~~*" */
255  AEXPR_SIMILAR, /* [NOT] SIMILAR - name must be "~" or "!~" */
256  AEXPR_BETWEEN, /* name must be "BETWEEN" */
257  AEXPR_NOT_BETWEEN, /* name must be "NOT BETWEEN" */
258  AEXPR_BETWEEN_SYM, /* name must be "BETWEEN SYMMETRIC" */
259  AEXPR_NOT_BETWEEN_SYM, /* name must be "NOT BETWEEN SYMMETRIC" */
260  AEXPR_PAREN /* nameless dummy node for parentheses */
261 } A_Expr_Kind;
A_Expr_Kind
Definition: parsenodes.h:243
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 

Definition at line 1607 of file parsenodes.h.

1608 {
1609  AT_AddColumn, /* add column */
1610  AT_AddColumnRecurse, /* internal to commands/tablecmds.c */
1611  AT_AddColumnToView, /* implicitly via CREATE OR REPLACE VIEW */
1612  AT_ColumnDefault, /* alter column default */
1613  AT_DropNotNull, /* alter column drop not null */
1614  AT_SetNotNull, /* alter column set not null */
1615  AT_SetStatistics, /* alter column set statistics */
1616  AT_SetOptions, /* alter column set ( options ) */
1617  AT_ResetOptions, /* alter column reset ( options ) */
1618  AT_SetStorage, /* alter column set storage */
1619  AT_DropColumn, /* drop column */
1620  AT_DropColumnRecurse, /* internal to commands/tablecmds.c */
1621  AT_AddIndex, /* add index */
1622  AT_ReAddIndex, /* internal to commands/tablecmds.c */
1623  AT_AddConstraint, /* add constraint */
1624  AT_AddConstraintRecurse, /* internal to commands/tablecmds.c */
1625  AT_ReAddConstraint, /* internal to commands/tablecmds.c */
1626  AT_AlterConstraint, /* alter constraint */
1627  AT_ValidateConstraint, /* validate constraint */
1628  AT_ValidateConstraintRecurse, /* internal to commands/tablecmds.c */
1629  AT_ProcessedConstraint, /* pre-processed add constraint (local in
1630  * parser/parse_utilcmd.c) */
1631  AT_AddIndexConstraint, /* add constraint using existing index */
1632  AT_DropConstraint, /* drop constraint */
1633  AT_DropConstraintRecurse, /* internal to commands/tablecmds.c */
1634  AT_ReAddComment, /* internal to commands/tablecmds.c */
1635  AT_AlterColumnType, /* alter column type */
1636  AT_AlterColumnGenericOptions, /* alter column OPTIONS (...) */
1637  AT_ChangeOwner, /* change owner */
1638  AT_ClusterOn, /* CLUSTER ON */
1639  AT_DropCluster, /* SET WITHOUT CLUSTER */
1640  AT_SetLogged, /* SET LOGGED */
1641  AT_SetUnLogged, /* SET UNLOGGED */
1642  AT_AddOids, /* SET WITH OIDS */
1643  AT_AddOidsRecurse, /* internal to commands/tablecmds.c */
1644  AT_DropOids, /* SET WITHOUT OIDS */
1645  AT_SetTableSpace, /* SET TABLESPACE */
1646  AT_SetRelOptions, /* SET (...) -- AM specific parameters */
1647  AT_ResetRelOptions, /* RESET (...) -- AM specific parameters */
1648  AT_ReplaceRelOptions, /* replace reloption list in its entirety */
1649  AT_EnableTrig, /* ENABLE TRIGGER name */
1650  AT_EnableAlwaysTrig, /* ENABLE ALWAYS TRIGGER name */
1651  AT_EnableReplicaTrig, /* ENABLE REPLICA TRIGGER name */
1652  AT_DisableTrig, /* DISABLE TRIGGER name */
1653  AT_EnableTrigAll, /* ENABLE TRIGGER ALL */
1654  AT_DisableTrigAll, /* DISABLE TRIGGER ALL */
1655  AT_EnableTrigUser, /* ENABLE TRIGGER USER */
1656  AT_DisableTrigUser, /* DISABLE TRIGGER USER */
1657  AT_EnableRule, /* ENABLE RULE name */
1658  AT_EnableAlwaysRule, /* ENABLE ALWAYS RULE name */
1659  AT_EnableReplicaRule, /* ENABLE REPLICA RULE name */
1660  AT_DisableRule, /* DISABLE RULE name */
1661  AT_AddInherit, /* INHERIT parent */
1662  AT_DropInherit, /* NO INHERIT parent */
1663  AT_AddOf, /* OF <type_name> */
1664  AT_DropOf, /* NOT OF */
1665  AT_ReplicaIdentity, /* REPLICA IDENTITY */
1666  AT_EnableRowSecurity, /* ENABLE ROW SECURITY */
1667  AT_DisableRowSecurity, /* DISABLE ROW SECURITY */
1668  AT_ForceRowSecurity, /* FORCE ROW SECURITY */
1669  AT_NoForceRowSecurity, /* NO FORCE ROW SECURITY */
1670  AT_GenericOptions, /* OPTIONS (...) */
1671  AT_AttachPartition, /* ATTACH PARTITION */
1672  AT_DetachPartition /* DETACH PARTITION */
1673 } AlterTableType;
AlterTableType
Definition: parsenodes.h:1607
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 3229 of file parsenodes.h.

enum ConstrType
Enumerator
CONSTR_NULL 
CONSTR_NOTNULL 
CONSTR_DEFAULT 
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 1939 of file parsenodes.h.

Enumerator
DEFELEM_UNSPEC 
DEFELEM_SET 
DEFELEM_ADD 
DEFELEM_DROP 

Definition at line 663 of file parsenodes.h.

664 {
665  DEFELEM_UNSPEC, /* no action given */
666  DEFELEM_SET,
667  DEFELEM_ADD,
669 } DefElemAction;
DefElemAction
Definition: parsenodes.h:663
Enumerator
DISCARD_ALL 
DISCARD_PLANS 
DISCARD_SEQUENCES 
DISCARD_TEMP 

Definition at line 3053 of file parsenodes.h.

Enumerator
DROP_RESTRICT 
DROP_CASCADE 

Definition at line 1588 of file parsenodes.h.

1589 {
1590  DROP_RESTRICT, /* drop fails if any dependent objects */
1591  DROP_CASCADE /* remove dependent objects too */
1592 } DropBehavior;
DropBehavior
Definition: parsenodes.h:1588
Enumerator
FETCH_FORWARD 
FETCH_BACKWARD 
FETCH_ABSOLUTE 
FETCH_RELATIVE 

Definition at line 2553 of file parsenodes.h.

2554 {
2555  /* for these, howMany is how many rows to fetch; FETCH_ALL means ALL */
2556  FETCH_FORWARD,
2558  /* for these, howMany indicates a position; only one row is fetched */
2561 } FetchDirection;
FetchDirection
Definition: parsenodes.h:2553
Enumerator
FUNC_PARAM_IN 
FUNC_PARAM_OUT 
FUNC_PARAM_INOUT 
FUNC_PARAM_VARIADIC 
FUNC_PARAM_TABLE 

Definition at line 2624 of file parsenodes.h.

2625 {
2626  /* the assigned enum values appear in pg_proc, don't change 'em! */
2627  FUNC_PARAM_IN = 'i', /* input only */
2628  FUNC_PARAM_OUT = 'o', /* output only */
2629  FUNC_PARAM_INOUT = 'b', /* both */
2630  FUNC_PARAM_VARIADIC = 'v', /* variadic (always input) */
2631  FUNC_PARAM_TABLE = 't' /* table function output column */
FunctionParameterMode
Definition: parsenodes.h:2624
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 1733 of file parsenodes.h.

1734 {
1735  ACL_OBJECT_COLUMN, /* column */
1736  ACL_OBJECT_RELATION, /* table, view */
1737  ACL_OBJECT_SEQUENCE, /* sequence */
1738  ACL_OBJECT_DATABASE, /* database */
1739  ACL_OBJECT_DOMAIN, /* domain */
1740  ACL_OBJECT_FDW, /* foreign-data wrapper */
1741  ACL_OBJECT_FOREIGN_SERVER, /* foreign server */
1742  ACL_OBJECT_FUNCTION, /* function */
1743  ACL_OBJECT_LANGUAGE, /* procedural language */
1744  ACL_OBJECT_LARGEOBJECT, /* largeobject */
1745  ACL_OBJECT_NAMESPACE, /* namespace */
1746  ACL_OBJECT_TABLESPACE, /* tablespace */
1747  ACL_OBJECT_TYPE /* type */
1748 } GrantObjectType;
GrantObjectType
Definition: parsenodes.h:1733
Enumerator
ACL_TARGET_OBJECT 
ACL_TARGET_ALL_IN_SCHEMA 
ACL_TARGET_DEFAULTS 

Definition at line 1726 of file parsenodes.h.

1727 {
1728  ACL_TARGET_OBJECT, /* grant on specific named object(s) */
1729  ACL_TARGET_ALL_IN_SCHEMA, /* grant on all objects in given schema(s) */
1730  ACL_TARGET_DEFAULTS /* ALTER DEFAULT PRIVILEGES */
1731 } GrantTargetType;
GrantTargetType
Definition: parsenodes.h:1726
Enumerator
GROUPING_SET_EMPTY 
GROUPING_SET_SIMPLE 
GROUPING_SET_ROLLUP 
GROUPING_SET_CUBE 
GROUPING_SET_SETS 

Definition at line 1159 of file parsenodes.h.

Enumerator
FDW_IMPORT_SCHEMA_ALL 
FDW_IMPORT_SCHEMA_LIMIT_TO 
FDW_IMPORT_SCHEMA_EXCEPT 

Definition at line 2174 of file parsenodes.h.

2175 {
2176  FDW_IMPORT_SCHEMA_ALL, /* all relations wanted */
2177  FDW_IMPORT_SCHEMA_LIMIT_TO, /* include only listed tables in import */
2178  FDW_IMPORT_SCHEMA_EXCEPT /* exclude listed tables from import */
ImportForeignSchemaType
Definition: parsenodes.h:2174
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_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 1520 of file parsenodes.h.

1521 {
1524  OBJECT_AMOP,
1525  OBJECT_AMPROC,
1526  OBJECT_ATTRIBUTE, /* type's attribute, when distinct from column */
1527  OBJECT_CAST,
1528  OBJECT_COLUMN,
1533  OBJECT_DEFACL,
1534  OBJECT_DOMAIN,
1538  OBJECT_FDW,
1542  OBJECT_INDEX,
1549  OBJECT_POLICY,
1552  OBJECT_ROLE,
1553  OBJECT_RULE,
1554  OBJECT_SCHEMA,
1558  OBJECT_TABLE,
1566  OBJECT_TYPE,
1568  OBJECT_VIEW
1569 } ObjectType;
ObjectType
Definition: parsenodes.h:1520
Enumerator
QSRC_ORIGINAL 
QSRC_PARSER 
QSRC_INSTEAD_RULE 
QSRC_QUAL_INSTEAD_RULE 
QSRC_NON_INSTEAD_RULE 

Definition at line 31 of file parsenodes.h.

32 {
33  QSRC_ORIGINAL, /* original parsetree (explicit query) */
34  QSRC_PARSER, /* added by parse analysis (now unused) */
35  QSRC_INSTEAD_RULE, /* added by unconditional INSTEAD rule */
36  QSRC_QUAL_INSTEAD_RULE, /* added by conditional INSTEAD rule */
37  QSRC_NON_INSTEAD_RULE /* added by non-INSTEAD rule */
38 } QuerySource;
QuerySource
Definition: parsenodes.h:31
Enumerator
REINDEX_OBJECT_INDEX 
REINDEX_OBJECT_TABLE 
REINDEX_OBJECT_SCHEMA 
REINDEX_OBJECT_SYSTEM 
REINDEX_OBJECT_DATABASE 

Definition at line 3098 of file parsenodes.h.

3099 {
3100  REINDEX_OBJECT_INDEX, /* index */
3101  REINDEX_OBJECT_TABLE, /* table or materialized view */
3102  REINDEX_OBJECT_SCHEMA, /* schema */
3103  REINDEX_OBJECT_SYSTEM, /* system catalogs */
3104  REINDEX_OBJECT_DATABASE /* database */
ReindexObjectType
Definition: parsenodes.h:3098
Enumerator
ROLESPEC_CSTRING 
ROLESPEC_CURRENT_USER 
ROLESPEC_SESSION_USER 
ROLESPEC_PUBLIC 

Definition at line 308 of file parsenodes.h.

309 {
310  ROLESPEC_CSTRING, /* role name is stored as a C string */
311  ROLESPEC_CURRENT_USER, /* role spec is CURRENT_USER */
312  ROLESPEC_SESSION_USER, /* role spec is SESSION_USER */
313  ROLESPEC_PUBLIC /* role name is "public" */
314 } RoleSpecType;
RoleSpecType
Definition: parsenodes.h:308
Enumerator
ROLESTMT_ROLE 
ROLESTMT_USER 
ROLESTMT_GROUP 

Definition at line 2311 of file parsenodes.h.

enum RTEKind
Enumerator
RTE_RELATION 
RTE_SUBQUERY 
RTE_JOIN 
RTE_FUNCTION 
RTE_VALUES 
RTE_CTE 

Definition at line 868 of file parsenodes.h.

869 {
870  RTE_RELATION, /* ordinary relation reference */
871  RTE_SUBQUERY, /* subquery in FROM */
872  RTE_JOIN, /* join */
873  RTE_FUNCTION, /* function in FROM */
874  RTE_VALUES, /* VALUES (<exprlist>), (<exprlist>), ... */
875  RTE_CTE /* common table expr (WITH list element) */
876 } RTEKind;
RTEKind
Definition: parsenodes.h:868
Enumerator
SETOP_NONE 
SETOP_UNION 
SETOP_INTERSECT 
SETOP_EXCEPT 

Definition at line 1407 of file parsenodes.h.

enum SortByDir
Enumerator
SORTBY_DEFAULT 
SORTBY_ASC 
SORTBY_DESC 
SORTBY_USING 

Definition at line 41 of file parsenodes.h.

42 {
44  SORTBY_ASC,
46  SORTBY_USING /* not allowed in CREATE INDEX ... */
47 } SortByDir;
SortByDir
Definition: parsenodes.h:41
Enumerator
SORTBY_NULLS_DEFAULT 
SORTBY_NULLS_FIRST 
SORTBY_NULLS_LAST 

Definition at line 49 of file parsenodes.h.

Enumerator
CREATE_TABLE_LIKE_DEFAULTS 
CREATE_TABLE_LIKE_CONSTRAINTS 
CREATE_TABLE_LIKE_INDEXES 
CREATE_TABLE_LIKE_STORAGE 
CREATE_TABLE_LIKE_COMMENTS 
CREATE_TABLE_LIKE_ALL 

Definition at line 624 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 2797 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 2969 of file parsenodes.h.

2970 {
2971  VACOPT_VACUUM = 1 << 0, /* do VACUUM */
2972  VACOPT_ANALYZE = 1 << 1, /* do ANALYZE */
2973  VACOPT_VERBOSE = 1 << 2, /* print progress info */
2974  VACOPT_FREEZE = 1 << 3, /* FREEZE option */
2975  VACOPT_FULL = 1 << 4, /* FULL (non-concurrent) vacuum */
2976  VACOPT_NOWAIT = 1 << 5, /* don't wait to get lock (autovacuum only) */
2977  VACOPT_SKIPTOAST = 1 << 6, /* don't process the TOAST table, if any */
2978  VACOPT_DISABLE_PAGE_SKIPPING = 1 << 7 /* don't skip any pages */
2979 } VacuumOption;
VacuumOption
Definition: parsenodes.h:2969
Enumerator
VAR_SET_VALUE 
VAR_SET_DEFAULT 
VAR_SET_CURRENT 
VAR_SET_MULTI 
VAR_RESET 
VAR_RESET_ALL 

Definition at line 1851 of file parsenodes.h.

1852 {
1853  VAR_SET_VALUE, /* SET var = value */
1854  VAR_SET_DEFAULT, /* SET var TO DEFAULT */
1855  VAR_SET_CURRENT, /* SET var FROM CURRENT */
1856  VAR_SET_MULTI, /* special case for SET TRANSACTION ... */
1857  VAR_RESET, /* RESET var */
1858  VAR_RESET_ALL /* RESET ALL */
1859 } VariableSetKind;
VariableSetKind
Definition: parsenodes.h:1851
Enumerator
NO_CHECK_OPTION 
LOCAL_CHECK_OPTION 
CASCADED_CHECK_OPTION 

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

1024 {
1025  WCO_VIEW_CHECK, /* WCO on an auto-updatable view */
1026  WCO_RLS_INSERT_CHECK, /* RLS INSERT WITH CHECK policy */
1027  WCO_RLS_UPDATE_CHECK, /* RLS UPDATE WITH CHECK policy */
1028  WCO_RLS_CONFLICT_CHECK /* RLS ON CONFLICT DO UPDATE USING policy */
1029 } WCOKind;
WCOKind
Definition: parsenodes.h:1023