PostgreSQL Source Code  git master
primnodes.h File Reference
#include "access/attnum.h"
#include "nodes/bitmapset.h"
#include "nodes/pg_list.h"
Include dependency graph for primnodes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Alias
 
struct  RangeVar
 
struct  TableFunc
 
struct  IntoClause
 
struct  Expr
 
struct  Var
 
struct  Const
 
struct  Param
 
struct  Aggref
 
struct  GroupingFunc
 
struct  WindowFunc
 
struct  SubscriptingRef
 
struct  FuncExpr
 
struct  NamedArgExpr
 
struct  OpExpr
 
struct  ScalarArrayOpExpr
 
struct  BoolExpr
 
struct  SubLink
 
struct  SubPlan
 
struct  AlternativeSubPlan
 
struct  FieldSelect
 
struct  FieldStore
 
struct  RelabelType
 
struct  CoerceViaIO
 
struct  ArrayCoerceExpr
 
struct  ConvertRowtypeExpr
 
struct  CollateExpr
 
struct  CaseExpr
 
struct  CaseWhen
 
struct  CaseTestExpr
 
struct  ArrayExpr
 
struct  RowExpr
 
struct  RowCompareExpr
 
struct  CoalesceExpr
 
struct  MinMaxExpr
 
struct  SQLValueFunction
 
struct  XmlExpr
 
struct  JsonFormat
 
struct  JsonReturning
 
struct  JsonValueExpr
 
struct  JsonConstructorExpr
 
struct  JsonIsPredicate
 
struct  NullTest
 
struct  BooleanTest
 
struct  MergeAction
 
struct  CoerceToDomain
 
struct  CoerceToDomainValue
 
struct  SetToDefault
 
struct  CurrentOfExpr
 
struct  NextValueExpr
 
struct  InferenceElem
 
struct  TargetEntry
 
struct  RangeTblRef
 
struct  JoinExpr
 
struct  FromExpr
 
struct  OnConflictExpr
 

Macros

#define INNER_VAR   (-1) /* reference to inner subplan */
 
#define OUTER_VAR   (-2) /* reference to outer subplan */
 
#define INDEX_VAR   (-3) /* reference to index column */
 
#define ROWID_VAR   (-4) /* row identity column during planning */
 
#define IS_SPECIAL_VARNO(varno)   ((int) (varno) < 0)
 
#define PRS2_OLD_VARNO   1
 
#define PRS2_NEW_VARNO   2
 

Typedefs

typedef enum OverridingKind OverridingKind
 
typedef struct Alias Alias
 
typedef enum OnCommitAction OnCommitAction
 
typedef struct RangeVar RangeVar
 
typedef struct TableFunc TableFunc
 
typedef struct IntoClause IntoClause
 
typedef struct Expr Expr
 
typedef struct Var Var
 
typedef struct Const Const
 
typedef enum ParamKind ParamKind
 
typedef struct Param Param
 
typedef struct Aggref Aggref
 
typedef struct GroupingFunc GroupingFunc
 
typedef struct WindowFunc WindowFunc
 
typedef struct SubscriptingRef SubscriptingRef
 
typedef enum CoercionContext CoercionContext
 
typedef enum CoercionForm CoercionForm
 
typedef struct FuncExpr FuncExpr
 
typedef struct NamedArgExpr NamedArgExpr
 
typedef struct OpExpr OpExpr
 
typedef OpExpr DistinctExpr
 
typedef OpExpr NullIfExpr
 
typedef struct ScalarArrayOpExpr ScalarArrayOpExpr
 
typedef enum BoolExprType BoolExprType
 
typedef struct BoolExpr BoolExpr
 
typedef enum SubLinkType SubLinkType
 
typedef struct SubLink SubLink
 
typedef struct SubPlan SubPlan
 
typedef struct AlternativeSubPlan AlternativeSubPlan
 
typedef struct FieldSelect FieldSelect
 
typedef struct FieldStore FieldStore
 
typedef struct RelabelType RelabelType
 
typedef struct CoerceViaIO CoerceViaIO
 
typedef struct ArrayCoerceExpr ArrayCoerceExpr
 
typedef struct ConvertRowtypeExpr ConvertRowtypeExpr
 
typedef struct CollateExpr CollateExpr
 
typedef struct CaseExpr CaseExpr
 
typedef struct CaseWhen CaseWhen
 
typedef struct CaseTestExpr CaseTestExpr
 
typedef struct ArrayExpr ArrayExpr
 
typedef struct RowExpr RowExpr
 
typedef enum RowCompareType RowCompareType
 
typedef struct RowCompareExpr RowCompareExpr
 
typedef struct CoalesceExpr CoalesceExpr
 
typedef enum MinMaxOp MinMaxOp
 
typedef struct MinMaxExpr MinMaxExpr
 
typedef enum SQLValueFunctionOp SQLValueFunctionOp
 
typedef struct SQLValueFunction SQLValueFunction
 
typedef enum XmlExprOp XmlExprOp
 
typedef enum XmlOptionType XmlOptionType
 
typedef struct XmlExpr XmlExpr
 
typedef enum JsonEncoding JsonEncoding
 
typedef enum JsonFormatType JsonFormatType
 
typedef struct JsonFormat JsonFormat
 
typedef struct JsonReturning JsonReturning
 
typedef struct JsonValueExpr JsonValueExpr
 
typedef enum JsonConstructorType JsonConstructorType
 
typedef struct JsonConstructorExpr JsonConstructorExpr
 
typedef enum JsonValueType JsonValueType
 
typedef struct JsonIsPredicate JsonIsPredicate
 
typedef enum NullTestType NullTestType
 
typedef struct NullTest NullTest
 
typedef enum BoolTestType BoolTestType
 
typedef struct BooleanTest BooleanTest
 
typedef struct MergeAction MergeAction
 
typedef struct CoerceToDomain CoerceToDomain
 
typedef struct CoerceToDomainValue CoerceToDomainValue
 
typedef struct SetToDefault SetToDefault
 
typedef struct CurrentOfExpr CurrentOfExpr
 
typedef struct NextValueExpr NextValueExpr
 
typedef struct InferenceElem InferenceElem
 
typedef struct TargetEntry TargetEntry
 
typedef struct RangeTblRef RangeTblRef
 
typedef struct JoinExpr JoinExpr
 
typedef struct FromExpr FromExpr
 
typedef struct OnConflictExpr OnConflictExpr
 

Enumerations

enum  OverridingKind { OVERRIDING_NOT_SET = 0 , OVERRIDING_USER_VALUE , OVERRIDING_SYSTEM_VALUE }
 
enum  OnCommitAction { ONCOMMIT_NOOP , ONCOMMIT_PRESERVE_ROWS , ONCOMMIT_DELETE_ROWS , ONCOMMIT_DROP }
 
enum  ParamKind { PARAM_EXTERN , PARAM_EXEC , PARAM_SUBLINK , PARAM_MULTIEXPR }
 
enum  CoercionContext { COERCION_IMPLICIT , COERCION_ASSIGNMENT , COERCION_PLPGSQL , COERCION_EXPLICIT }
 
enum  CoercionForm { COERCE_EXPLICIT_CALL , COERCE_EXPLICIT_CAST , COERCE_IMPLICIT_CAST , COERCE_SQL_SYNTAX }
 
enum  BoolExprType { AND_EXPR , OR_EXPR , NOT_EXPR }
 
enum  SubLinkType {
  EXISTS_SUBLINK , ALL_SUBLINK , ANY_SUBLINK , ROWCOMPARE_SUBLINK ,
  EXPR_SUBLINK , MULTIEXPR_SUBLINK , ARRAY_SUBLINK , CTE_SUBLINK
}
 
enum  RowCompareType {
  ROWCOMPARE_LT = 1 , ROWCOMPARE_LE = 2 , ROWCOMPARE_EQ = 3 , ROWCOMPARE_GE = 4 ,
  ROWCOMPARE_GT = 5 , ROWCOMPARE_NE = 6
}
 
enum  MinMaxOp { IS_GREATEST , IS_LEAST }
 
enum  SQLValueFunctionOp {
  SVFOP_CURRENT_DATE , SVFOP_CURRENT_TIME , SVFOP_CURRENT_TIME_N , SVFOP_CURRENT_TIMESTAMP ,
  SVFOP_CURRENT_TIMESTAMP_N , SVFOP_LOCALTIME , SVFOP_LOCALTIME_N , SVFOP_LOCALTIMESTAMP ,
  SVFOP_LOCALTIMESTAMP_N , SVFOP_CURRENT_ROLE , SVFOP_CURRENT_USER , SVFOP_USER ,
  SVFOP_SESSION_USER , SVFOP_CURRENT_CATALOG , SVFOP_CURRENT_SCHEMA
}
 
enum  XmlExprOp {
  IS_XMLCONCAT , IS_XMLELEMENT , IS_XMLFOREST , IS_XMLPARSE ,
  IS_XMLPI , IS_XMLROOT , IS_XMLSERIALIZE , IS_DOCUMENT
}
 
enum  XmlOptionType { XMLOPTION_DOCUMENT , XMLOPTION_CONTENT }
 
enum  JsonEncoding { JS_ENC_DEFAULT , JS_ENC_UTF8 , JS_ENC_UTF16 , JS_ENC_UTF32 }
 
enum  JsonFormatType { JS_FORMAT_DEFAULT , JS_FORMAT_JSON , JS_FORMAT_JSONB }
 
enum  JsonConstructorType {
  JSCTOR_JSON_OBJECT = 1 , JSCTOR_JSON_ARRAY = 2 , JSCTOR_JSON_OBJECTAGG = 3 , JSCTOR_JSON_ARRAYAGG = 4 ,
  JSCTOR_JSON_PARSE = 5 , JSCTOR_JSON_SCALAR = 6 , JSCTOR_JSON_SERIALIZE = 7
}
 
enum  JsonValueType { JS_TYPE_ANY , JS_TYPE_OBJECT , JS_TYPE_ARRAY , JS_TYPE_SCALAR }
 
enum  NullTestType { IS_NULL , IS_NOT_NULL }
 
enum  BoolTestType {
  IS_TRUE , IS_NOT_TRUE , IS_FALSE , IS_NOT_FALSE ,
  IS_UNKNOWN , IS_NOT_UNKNOWN
}
 

Macro Definition Documentation

◆ INDEX_VAR

#define INDEX_VAR   (-3) /* reference to index column */

Definition at line 224 of file primnodes.h.

◆ INNER_VAR

#define INNER_VAR   (-1) /* reference to inner subplan */

Definition at line 222 of file primnodes.h.

◆ IS_SPECIAL_VARNO

#define IS_SPECIAL_VARNO (   varno)    ((int) (varno) < 0)

Definition at line 227 of file primnodes.h.

◆ OUTER_VAR

#define OUTER_VAR   (-2) /* reference to outer subplan */

Definition at line 223 of file primnodes.h.

◆ PRS2_NEW_VARNO

#define PRS2_NEW_VARNO   2

Definition at line 231 of file primnodes.h.

◆ PRS2_OLD_VARNO

#define PRS2_OLD_VARNO   1

Definition at line 230 of file primnodes.h.

◆ ROWID_VAR

#define ROWID_VAR   (-4) /* row identity column during planning */

Definition at line 225 of file primnodes.h.

Typedef Documentation

◆ Aggref

typedef struct Aggref Aggref

◆ Alias

typedef struct Alias Alias

◆ AlternativeSubPlan

◆ ArrayCoerceExpr

◆ ArrayExpr

typedef struct ArrayExpr ArrayExpr

◆ BooleanTest

typedef struct BooleanTest BooleanTest

◆ BoolExpr

typedef struct BoolExpr BoolExpr

◆ BoolExprType

typedef enum BoolExprType BoolExprType

◆ BoolTestType

typedef enum BoolTestType BoolTestType

◆ CaseExpr

typedef struct CaseExpr CaseExpr

◆ CaseTestExpr

typedef struct CaseTestExpr CaseTestExpr

◆ CaseWhen

typedef struct CaseWhen CaseWhen

◆ CoalesceExpr

typedef struct CoalesceExpr CoalesceExpr

◆ CoerceToDomain

◆ CoerceToDomainValue

◆ CoerceViaIO

typedef struct CoerceViaIO CoerceViaIO

◆ CoercionContext

◆ CoercionForm

typedef enum CoercionForm CoercionForm

◆ CollateExpr

typedef struct CollateExpr CollateExpr

◆ Const

typedef struct Const Const

◆ ConvertRowtypeExpr

◆ CurrentOfExpr

typedef struct CurrentOfExpr CurrentOfExpr

◆ DistinctExpr

Definition at line 787 of file primnodes.h.

◆ Expr

typedef struct Expr Expr

◆ FieldSelect

typedef struct FieldSelect FieldSelect

◆ FieldStore

typedef struct FieldStore FieldStore

◆ FromExpr

typedef struct FromExpr FromExpr

◆ FuncExpr

typedef struct FuncExpr FuncExpr

◆ GroupingFunc

typedef struct GroupingFunc GroupingFunc

◆ InferenceElem

typedef struct InferenceElem InferenceElem

◆ IntoClause

typedef struct IntoClause IntoClause

◆ JoinExpr

typedef struct JoinExpr JoinExpr

◆ JsonConstructorExpr

◆ JsonConstructorType

◆ JsonEncoding

typedef enum JsonEncoding JsonEncoding

◆ JsonFormat

typedef struct JsonFormat JsonFormat

◆ JsonFormatType

◆ JsonIsPredicate

◆ JsonReturning

typedef struct JsonReturning JsonReturning

◆ JsonValueExpr

typedef struct JsonValueExpr JsonValueExpr

◆ JsonValueType

◆ MergeAction

typedef struct MergeAction MergeAction

◆ MinMaxExpr

typedef struct MinMaxExpr MinMaxExpr

◆ MinMaxOp

typedef enum MinMaxOp MinMaxOp

◆ NamedArgExpr

typedef struct NamedArgExpr NamedArgExpr

◆ NextValueExpr

typedef struct NextValueExpr NextValueExpr

◆ NullIfExpr

typedef OpExpr NullIfExpr

Definition at line 795 of file primnodes.h.

◆ NullTest

typedef struct NullTest NullTest

◆ NullTestType

typedef enum NullTestType NullTestType

◆ OnCommitAction

◆ OnConflictExpr

◆ OpExpr

typedef struct OpExpr OpExpr

◆ OverridingKind

◆ Param

typedef struct Param Param

◆ ParamKind

typedef enum ParamKind ParamKind

◆ RangeTblRef

typedef struct RangeTblRef RangeTblRef

◆ RangeVar

typedef struct RangeVar RangeVar

◆ RelabelType

typedef struct RelabelType RelabelType

◆ RowCompareExpr

◆ RowCompareType

◆ RowExpr

typedef struct RowExpr RowExpr

◆ ScalarArrayOpExpr

◆ SetToDefault

typedef struct SetToDefault SetToDefault

◆ SQLValueFunction

◆ SQLValueFunctionOp

◆ SubLink

typedef struct SubLink SubLink

◆ SubLinkType

typedef enum SubLinkType SubLinkType

◆ SubPlan

typedef struct SubPlan SubPlan

◆ SubscriptingRef

◆ TableFunc

typedef struct TableFunc TableFunc

◆ TargetEntry

typedef struct TargetEntry TargetEntry

◆ Var

typedef struct Var Var

◆ WindowFunc

typedef struct WindowFunc WindowFunc

◆ XmlExpr

typedef struct XmlExpr XmlExpr

◆ XmlExprOp

typedef enum XmlExprOp XmlExprOp

◆ XmlOptionType

Enumeration Type Documentation

◆ BoolExprType

Enumerator
AND_EXPR 
OR_EXPR 
NOT_EXPR 

Definition at line 864 of file primnodes.h.

865 {
867 } BoolExprType;
BoolExprType
Definition: primnodes.h:865
@ AND_EXPR
Definition: primnodes.h:866
@ OR_EXPR
Definition: primnodes.h:866
@ NOT_EXPR
Definition: primnodes.h:866

◆ BoolTestType

Enumerator
IS_TRUE 
IS_NOT_TRUE 
IS_FALSE 
IS_NOT_FALSE 
IS_UNKNOWN 
IS_NOT_UNKNOWN 

Definition at line 1716 of file primnodes.h.

1717 {
1719 } BoolTestType;
BoolTestType
Definition: primnodes.h:1717
@ IS_NOT_TRUE
Definition: primnodes.h:1718
@ IS_NOT_FALSE
Definition: primnodes.h:1718
@ IS_NOT_UNKNOWN
Definition: primnodes.h:1718
@ IS_TRUE
Definition: primnodes.h:1718
@ IS_UNKNOWN
Definition: primnodes.h:1718
@ IS_FALSE
Definition: primnodes.h:1718

◆ CoercionContext

Enumerator
COERCION_IMPLICIT 
COERCION_ASSIGNMENT 
COERCION_PLPGSQL 
COERCION_EXPLICIT 

Definition at line 647 of file primnodes.h.

648 {
649  COERCION_IMPLICIT, /* coercion in context of expression */
650  COERCION_ASSIGNMENT, /* coercion in context of assignment */
651  COERCION_PLPGSQL, /* if no assignment cast, use CoerceViaIO */
652  COERCION_EXPLICIT, /* explicit cast operation */
CoercionContext
Definition: primnodes.h:648
@ COERCION_PLPGSQL
Definition: primnodes.h:651
@ COERCION_ASSIGNMENT
Definition: primnodes.h:650
@ COERCION_EXPLICIT
Definition: primnodes.h:652
@ COERCION_IMPLICIT
Definition: primnodes.h:649

◆ CoercionForm

Enumerator
COERCE_EXPLICIT_CALL 
COERCE_EXPLICIT_CAST 
COERCE_IMPLICIT_CAST 
COERCE_SQL_SYNTAX 

Definition at line 667 of file primnodes.h.

668 {
669  COERCE_EXPLICIT_CALL, /* display as a function call */
670  COERCE_EXPLICIT_CAST, /* display as an explicit cast */
671  COERCE_IMPLICIT_CAST, /* implicit cast, so hide it */
672  COERCE_SQL_SYNTAX, /* display with SQL-mandated special syntax */
673 } CoercionForm;
CoercionForm
Definition: primnodes.h:668
@ COERCE_SQL_SYNTAX
Definition: primnodes.h:672
@ COERCE_IMPLICIT_CAST
Definition: primnodes.h:671
@ COERCE_EXPLICIT_CAST
Definition: primnodes.h:670
@ COERCE_EXPLICIT_CALL
Definition: primnodes.h:669

◆ JsonConstructorType

Enumerator
JSCTOR_JSON_OBJECT 
JSCTOR_JSON_ARRAY 
JSCTOR_JSON_OBJECTAGG 
JSCTOR_JSON_ARRAYAGG 
JSCTOR_JSON_PARSE 
JSCTOR_JSON_SCALAR 
JSCTOR_JSON_SERIALIZE 

Definition at line 1619 of file primnodes.h.

1620 {
1621  JSCTOR_JSON_OBJECT = 1,
1622  JSCTOR_JSON_ARRAY = 2,
1625  JSCTOR_JSON_PARSE = 5,
1626  JSCTOR_JSON_SCALAR = 6,
JsonConstructorType
Definition: primnodes.h:1620
@ JSCTOR_JSON_SERIALIZE
Definition: primnodes.h:1627
@ JSCTOR_JSON_ARRAYAGG
Definition: primnodes.h:1624
@ JSCTOR_JSON_PARSE
Definition: primnodes.h:1625
@ JSCTOR_JSON_OBJECT
Definition: primnodes.h:1621
@ JSCTOR_JSON_SCALAR
Definition: primnodes.h:1626
@ JSCTOR_JSON_ARRAY
Definition: primnodes.h:1622
@ JSCTOR_JSON_OBJECTAGG
Definition: primnodes.h:1623

◆ JsonEncoding

Enumerator
JS_ENC_DEFAULT 
JS_ENC_UTF8 
JS_ENC_UTF16 
JS_ENC_UTF32 

Definition at line 1559 of file primnodes.h.

1560 {
1561  JS_ENC_DEFAULT, /* unspecified */
1562  JS_ENC_UTF8,
1563  JS_ENC_UTF16,
1564  JS_ENC_UTF32,
1565 } JsonEncoding;
JsonEncoding
Definition: primnodes.h:1560
@ JS_ENC_DEFAULT
Definition: primnodes.h:1561
@ JS_ENC_UTF32
Definition: primnodes.h:1564
@ JS_ENC_UTF8
Definition: primnodes.h:1562
@ JS_ENC_UTF16
Definition: primnodes.h:1563

◆ JsonFormatType

Enumerator
JS_FORMAT_DEFAULT 
JS_FORMAT_JSON 
JS_FORMAT_JSONB 

Definition at line 1571 of file primnodes.h.

1572 {
1573  JS_FORMAT_DEFAULT, /* unspecified */
1574  JS_FORMAT_JSON, /* FORMAT JSON [ENCODING ...] */
1575  JS_FORMAT_JSONB, /* implicit internal format for RETURNING
1576  * jsonb */
1577 } JsonFormatType;
JsonFormatType
Definition: primnodes.h:1572
@ JS_FORMAT_JSONB
Definition: primnodes.h:1575
@ JS_FORMAT_DEFAULT
Definition: primnodes.h:1573
@ JS_FORMAT_JSON
Definition: primnodes.h:1574

◆ JsonValueType

Enumerator
JS_TYPE_ANY 
JS_TYPE_OBJECT 
JS_TYPE_ARRAY 
JS_TYPE_SCALAR 

Definition at line 1651 of file primnodes.h.

1652 {
1653  JS_TYPE_ANY, /* IS JSON [VALUE] */
1654  JS_TYPE_OBJECT, /* IS JSON OBJECT */
1655  JS_TYPE_ARRAY, /* IS JSON ARRAY */
1656  JS_TYPE_SCALAR, /* IS JSON SCALAR */
1657 } JsonValueType;
JsonValueType
Definition: primnodes.h:1652
@ JS_TYPE_ANY
Definition: primnodes.h:1653
@ JS_TYPE_ARRAY
Definition: primnodes.h:1655
@ JS_TYPE_OBJECT
Definition: primnodes.h:1654
@ JS_TYPE_SCALAR
Definition: primnodes.h:1656

◆ MinMaxOp

enum MinMaxOp
Enumerator
IS_GREATEST 
IS_LEAST 

Definition at line 1435 of file primnodes.h.

1436 {
1437  IS_GREATEST,
1438  IS_LEAST
1439 } MinMaxOp;
MinMaxOp
Definition: primnodes.h:1436
@ IS_LEAST
Definition: primnodes.h:1438
@ IS_GREATEST
Definition: primnodes.h:1437

◆ NullTestType

Enumerator
IS_NULL 
IS_NOT_NULL 

Definition at line 1692 of file primnodes.h.

1693 {
1695 } NullTestType;
NullTestType
Definition: primnodes.h:1693
@ IS_NULL
Definition: primnodes.h:1694
@ IS_NOT_NULL
Definition: primnodes.h:1694

◆ OnCommitAction

Enumerator
ONCOMMIT_NOOP 
ONCOMMIT_PRESERVE_ROWS 
ONCOMMIT_DELETE_ROWS 
ONCOMMIT_DROP 

Definition at line 55 of file primnodes.h.

56 {
57  ONCOMMIT_NOOP, /* No ON COMMIT clause (do nothing) */
58  ONCOMMIT_PRESERVE_ROWS, /* ON COMMIT PRESERVE ROWS (do nothing) */
59  ONCOMMIT_DELETE_ROWS, /* ON COMMIT DELETE ROWS */
60  ONCOMMIT_DROP, /* ON COMMIT DROP */
OnCommitAction
Definition: primnodes.h:56
@ ONCOMMIT_DELETE_ROWS
Definition: primnodes.h:59
@ ONCOMMIT_NOOP
Definition: primnodes.h:57
@ ONCOMMIT_PRESERVE_ROWS
Definition: primnodes.h:58
@ ONCOMMIT_DROP
Definition: primnodes.h:60

◆ OverridingKind

Enumerator
OVERRIDING_NOT_SET 
OVERRIDING_USER_VALUE 
OVERRIDING_SYSTEM_VALUE 

Definition at line 25 of file primnodes.h.

26 {
OverridingKind
Definition: primnodes.h:26
@ OVERRIDING_NOT_SET
Definition: primnodes.h:27
@ OVERRIDING_SYSTEM_VALUE
Definition: primnodes.h:29
@ OVERRIDING_USER_VALUE
Definition: primnodes.h:28

◆ ParamKind

enum ParamKind
Enumerator
PARAM_EXTERN 
PARAM_EXEC 
PARAM_SUBLINK 
PARAM_MULTIEXPR 

Definition at line 351 of file primnodes.h.

352 {
353  PARAM_EXTERN,
354  PARAM_EXEC,
357 } ParamKind;
ParamKind
Definition: primnodes.h:352
@ PARAM_MULTIEXPR
Definition: primnodes.h:356
@ PARAM_EXTERN
Definition: primnodes.h:353
@ PARAM_SUBLINK
Definition: primnodes.h:355
@ PARAM_EXEC
Definition: primnodes.h:354

◆ RowCompareType

Enumerator
ROWCOMPARE_LT 
ROWCOMPARE_LE 
ROWCOMPARE_EQ 
ROWCOMPARE_GE 
ROWCOMPARE_GT 
ROWCOMPARE_NE 

Definition at line 1387 of file primnodes.h.

1388 {
1389  /* Values of this enum are chosen to match btree strategy numbers */
1390  ROWCOMPARE_LT = 1, /* BTLessStrategyNumber */
1391  ROWCOMPARE_LE = 2, /* BTLessEqualStrategyNumber */
1392  ROWCOMPARE_EQ = 3, /* BTEqualStrategyNumber */
1393  ROWCOMPARE_GE = 4, /* BTGreaterEqualStrategyNumber */
1394  ROWCOMPARE_GT = 5, /* BTGreaterStrategyNumber */
1395  ROWCOMPARE_NE = 6, /* no such btree strategy */
1396 } RowCompareType;
RowCompareType
Definition: primnodes.h:1388
@ ROWCOMPARE_GT
Definition: primnodes.h:1394
@ ROWCOMPARE_LT
Definition: primnodes.h:1390
@ ROWCOMPARE_NE
Definition: primnodes.h:1395
@ ROWCOMPARE_LE
Definition: primnodes.h:1391
@ ROWCOMPARE_EQ
Definition: primnodes.h:1392
@ ROWCOMPARE_GE
Definition: primnodes.h:1393

◆ SQLValueFunctionOp

Enumerator
SVFOP_CURRENT_DATE 
SVFOP_CURRENT_TIME 
SVFOP_CURRENT_TIME_N 
SVFOP_CURRENT_TIMESTAMP 
SVFOP_CURRENT_TIMESTAMP_N 
SVFOP_LOCALTIME 
SVFOP_LOCALTIME_N 
SVFOP_LOCALTIMESTAMP 
SVFOP_LOCALTIMESTAMP_N 
SVFOP_CURRENT_ROLE 
SVFOP_CURRENT_USER 
SVFOP_USER 
SVFOP_SESSION_USER 
SVFOP_CURRENT_CATALOG 
SVFOP_CURRENT_SCHEMA 

Definition at line 1469 of file primnodes.h.

1470 {
1482  SVFOP_USER,
SQLValueFunctionOp
Definition: primnodes.h:1470
@ SVFOP_CURRENT_CATALOG
Definition: primnodes.h:1484
@ SVFOP_LOCALTIME_N
Definition: primnodes.h:1477
@ SVFOP_CURRENT_TIMESTAMP
Definition: primnodes.h:1474
@ SVFOP_LOCALTIME
Definition: primnodes.h:1476
@ SVFOP_CURRENT_TIMESTAMP_N
Definition: primnodes.h:1475
@ SVFOP_CURRENT_ROLE
Definition: primnodes.h:1480
@ SVFOP_USER
Definition: primnodes.h:1482
@ SVFOP_CURRENT_SCHEMA
Definition: primnodes.h:1485
@ SVFOP_LOCALTIMESTAMP_N
Definition: primnodes.h:1479
@ SVFOP_CURRENT_DATE
Definition: primnodes.h:1471
@ SVFOP_CURRENT_TIME_N
Definition: primnodes.h:1473
@ SVFOP_CURRENT_TIME
Definition: primnodes.h:1472
@ SVFOP_LOCALTIMESTAMP
Definition: primnodes.h:1478
@ SVFOP_CURRENT_USER
Definition: primnodes.h:1481
@ SVFOP_SESSION_USER
Definition: primnodes.h:1483

◆ SubLinkType

Enumerator
EXISTS_SUBLINK 
ALL_SUBLINK 
ANY_SUBLINK 
ROWCOMPARE_SUBLINK 
EXPR_SUBLINK 
MULTIEXPR_SUBLINK 
ARRAY_SUBLINK 
CTE_SUBLINK 

Definition at line 930 of file primnodes.h.

931 {
933  ALL_SUBLINK,
934  ANY_SUBLINK,
936  EXPR_SUBLINK,
939  CTE_SUBLINK, /* for SubPlans only */
940 } SubLinkType;
SubLinkType
Definition: primnodes.h:931
@ ARRAY_SUBLINK
Definition: primnodes.h:938
@ ANY_SUBLINK
Definition: primnodes.h:934
@ MULTIEXPR_SUBLINK
Definition: primnodes.h:937
@ CTE_SUBLINK
Definition: primnodes.h:939
@ EXPR_SUBLINK
Definition: primnodes.h:936
@ ROWCOMPARE_SUBLINK
Definition: primnodes.h:935
@ ALL_SUBLINK
Definition: primnodes.h:933
@ EXISTS_SUBLINK
Definition: primnodes.h:932

◆ XmlExprOp

enum XmlExprOp
Enumerator
IS_XMLCONCAT 
IS_XMLELEMENT 
IS_XMLFOREST 
IS_XMLPARSE 
IS_XMLPI 
IS_XMLROOT 
IS_XMLSERIALIZE 
IS_DOCUMENT 

Definition at line 1513 of file primnodes.h.

1514 {
1515  IS_XMLCONCAT, /* XMLCONCAT(args) */
1516  IS_XMLELEMENT, /* XMLELEMENT(name, xml_attributes, args) */
1517  IS_XMLFOREST, /* XMLFOREST(xml_attributes) */
1518  IS_XMLPARSE, /* XMLPARSE(text, is_doc, preserve_ws) */
1519  IS_XMLPI, /* XMLPI(name [, args]) */
1520  IS_XMLROOT, /* XMLROOT(xml, version, standalone) */
1521  IS_XMLSERIALIZE, /* XMLSERIALIZE(is_document, xmlval, indent) */
1522  IS_DOCUMENT, /* xmlval IS DOCUMENT */
1523 } XmlExprOp;
XmlExprOp
Definition: primnodes.h:1514
@ IS_DOCUMENT
Definition: primnodes.h:1522
@ IS_XMLFOREST
Definition: primnodes.h:1517
@ IS_XMLCONCAT
Definition: primnodes.h:1515
@ IS_XMLPI
Definition: primnodes.h:1519
@ IS_XMLPARSE
Definition: primnodes.h:1518
@ IS_XMLSERIALIZE
Definition: primnodes.h:1521
@ IS_XMLROOT
Definition: primnodes.h:1520
@ IS_XMLELEMENT
Definition: primnodes.h:1516

◆ XmlOptionType

Enumerator
XMLOPTION_DOCUMENT 
XMLOPTION_CONTENT 

Definition at line 1525 of file primnodes.h.

1526 {
1529 } XmlOptionType;
XmlOptionType
Definition: primnodes.h:1526
@ XMLOPTION_CONTENT
Definition: primnodes.h:1528
@ XMLOPTION_DOCUMENT
Definition: primnodes.h:1527