Skip to main content

PgNode

Trait PgNode 

Source
pub trait PgNode: Sealed + Sized {
    const CAST_TAGS: &'static [NodeTag];

    // Provided methods
    fn try_cast<T: PgNode>(node: &T) -> Option<&Self> { ... }
    fn as_node(&self) -> &Node { ... }
    fn display_node(&self) -> String { ... }
    fn is_a(&self, tag: NodeTag) -> bool { ... }
    fn node_tag(&self) -> NodeTag { ... }
    fn try_as<T: PgNode>(&self) -> Option<&T> { ... }
}
Expand description

A trait applied to all Postgres pg_sys::Node types and subtypes

Required Associated Constants§

Source

const CAST_TAGS: &'static [NodeTag]

PgNode values that have one of these tags can safely be cast to Self

Provided Methods§

Source

fn try_cast<T: PgNode>(node: &T) -> Option<&Self>

Try to safely cast node to Self

Source

fn as_node(&self) -> &Node

Upcast this node to a pg_sys::Node

Source

fn display_node(&self) -> String

Format this node

§Safety

While pgrx controls the types for which PgNode is implemented and only pgrx can implement PgNode it cannot control the members of those types and a user could assign any pointer type member to something invalid that Postgres wouldn’t understand.

Because this function is used by impl Display we purposely don’t mark it unsafe. The assumption here, which might be a bad one, is that only intentional misuse would actually cause undefined behavior.

Source

fn is_a(&self, tag: NodeTag) -> bool

Source

fn node_tag(&self) -> NodeTag

Source

fn try_as<T: PgNode>(&self) -> Option<&T>

Try to safely cast self to T

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl PgNode for A_ArrayExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for A_Const

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for A_Expr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for A_Indices

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for A_Indirection

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for A_Star

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AccessPriv

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Agg

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AggPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AggState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Aggref

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Alias

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterCollationStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterDatabaseSetStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterDatabaseStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterDefaultPrivilegesStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterDomainStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterEnumStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterEventTrigStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterExtensionContentsStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterExtensionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterFdwStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterForeignServerStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterFunctionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterObjectDependsStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterObjectSchemaStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterOpFamilyStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterOperatorStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterOwnerStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterPolicyStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterPublicationStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterRoleSetStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterRoleStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterSeqStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterStatsStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterSubscriptionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterSystemStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterTSConfigurationStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterTSDictionaryStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterTableCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterTableMoveAllStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterTableSpaceOptionsStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterTableStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterTypeStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlterUserMappingStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AlternativeSubPlan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Append

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AppendPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AppendRelInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for AppendState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ArrayCoerceExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ArrayExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BaseBackupCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapAnd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapAndPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapAndState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapHeapPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapHeapScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapHeapScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapIndexScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapIndexScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapOr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapOrPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BitmapOrState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BoolExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BooleanTest

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for BufferHeapTupleTableSlot

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CTECycleClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CTESearchClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CallContext

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CallStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CaseExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CaseTestExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CaseWhen

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CheckPointStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ClosePortalStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ClusterStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CoalesceExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CoerceToDomain

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CoerceToDomainValue

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CoerceViaIO

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CollateClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CollateExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ColumnDef

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ColumnRef

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CommentStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CommonTableExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CompositeTypeStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Const

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Constraint

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ConstraintsSetStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ConvertRowtypeExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CopyStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateAmStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateCastStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateConversionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateDomainStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateEnumStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateEventTrigStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateExtensionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateFdwStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateForeignServerStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateForeignTableStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateFunctionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateOpClassItem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateOpClassStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateOpFamilyStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreatePLangStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreatePolicyStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreatePublicationStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateRangeStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateReplicationSlotCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateRoleStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateSchemaStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateSeqStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateStatsStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateSubscriptionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateTableAsStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateTableSpaceStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateTransformStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateTrigStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreateUserMappingStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CreatedbStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CteScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CteScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CurrentOfExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CustomPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CustomScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for CustomScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DeallocateStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DeclareCursorStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DefElem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DefineStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DeleteStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DiscardStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DoStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DomainConstraintState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropOwnedStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropReplicationSlotCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropRoleStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropSubscriptionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropTableSpaceStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropUserMappingStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for DropdbStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for EState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for EquivalenceClass

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for EquivalenceMember

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for EventTriggerData

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ExecuteStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ExplainStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Expr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ExprContext

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ExprState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ExtensibleNode

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FdwRoutine

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FetchStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FieldSelect

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FieldStore

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ForeignKeyCacheInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ForeignKeyOptInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ForeignPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ForeignScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ForeignScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FromExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FuncCall

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FuncExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FunctionParameter

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FunctionScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for FunctionScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Gather

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GatherMerge

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GatherMergePath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GatherMergeState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GatherPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GatherState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GrantRoleStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GrantStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Group

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GroupPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GroupResultPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GroupState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GroupingFunc

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GroupingSet

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GroupingSetData

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for GroupingSetsPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Hash

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for HashJoin

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for HashJoinState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for HashPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for HashState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for HeapTupleTableSlot

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IdentifySystemCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ImportForeignSchemaStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IncrementalSort

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IncrementalSortPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IncrementalSortState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexAmRoutine

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexElem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexOnlyScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexOnlyScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexOptInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IndexStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for InferClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for InferenceElem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for InlineCodeBlock

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for InsertStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for IntoClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Join

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for JoinExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for JoinPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for JoinState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for JunkFilter

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Limit

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LimitPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LimitState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for List

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ListenStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LoadStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LockRows

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LockRowsPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LockRowsState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LockStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for LockingClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Material

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MaterialPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MaterialState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Memoize

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MemoizePath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MemoizeState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MemoryContextData

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MergeAppend

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MergeAppendPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MergeAppendState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MergeJoin

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MergeJoinState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MergePath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MinMaxAggInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MinMaxAggPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MinMaxExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MinimalTupleTableSlot

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ModifyTable

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ModifyTablePath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ModifyTableState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for MultiAssignRef

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NamedArgExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NamedTuplestoreScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NamedTuplestoreScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NestLoop

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NestLoopParam

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NestLoopState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NextValueExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Node

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NotifyStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for NullTest

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ObjectWithArgs

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for OnConflictClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for OnConflictExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for OnConflictSetState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for OpExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PLAssignStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Param

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ParamPathInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ParamRef

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionBoundSpec

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionElem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionPruneInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionPruneStep

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionPruneStepCombine

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionPruneStepOp

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionRangeDatum

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionSpec

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PartitionedRelPruneInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Path

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PathKey

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PathTarget

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlaceHolderInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlaceHolderVar

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Plan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlanInvalItem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlanRowMark

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlannedStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlannerGlobal

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlannerInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PlannerParamItem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for PrepareStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ProjectSet

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ProjectSetPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ProjectSetState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ProjectionInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ProjectionPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Query

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeFunction

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeSubselect

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeTableFunc

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeTableFuncCol

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeTableSample

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeTblEntry

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeTblFunction

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeTblRef

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RangeVar

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RawStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ReassignOwnedStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RecursiveUnion

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RecursiveUnionPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RecursiveUnionState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RefreshMatViewStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ReindexStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RelOptInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RelabelType

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RenameStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ReplicaIdentityStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ResTarget

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RestrictInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Result

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ResultRelInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ResultState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ReturnSetInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ReturnStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RoleSpec

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RollupData

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RowCompareExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RowExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RowIdentityVarInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RowMarkClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for RuleStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SQLCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SQLValueFunction

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SampleScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SampleScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ScalarArrayOpExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Scan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SecLabelStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SelectStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SeqScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SetExprState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SetOp

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SetOpPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SetOpState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SetOperationStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SetToDefault

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Sort

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SortBy

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SortGroupClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SortPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SortState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SpecialJoinInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for StartReplicationCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for StatisticExtInfo

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for StatsElem

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SubPlan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SubPlanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SubqueryScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SubqueryScanPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SubqueryScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SubscriptingRef

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SupportRequestCost

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SupportRequestIndexCondition

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SupportRequestRows

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SupportRequestSelectivity

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for SupportRequestSimplify

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TableAmRoutine

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TableFunc

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TableFuncScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TableFuncScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TableLikeClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TableSampleClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TargetEntry

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TidPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TidRangePath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TidRangeScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TidRangeScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TidScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TidScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TimeLineHistoryCmd

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TransactionStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TriggerData

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TriggerTransition

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TruncateStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TsmRoutine

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TupleTableSlot

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TypeCast

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for TypeName

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Unique

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for UniquePath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for UniqueState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for UnlistenStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for UpdateStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for UpperUniquePath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for VacuumRelation

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for VacuumStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Value

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ValuesScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ValuesScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for Var

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for VariableSetStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for VariableShowStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for ViewStmt

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for VirtualTupleTableSlot

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WindowAgg

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WindowAggPath

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WindowAggState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WindowClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WindowDef

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WindowFunc

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WindowFuncExprState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WithCheckOption

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WithClause

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WorkTableScan

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for WorkTableScanState

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for XmlExpr

Source§

const CAST_TAGS: &'static [NodeTag]

Source§

impl PgNode for XmlSerialize

Source§

const CAST_TAGS: &'static [NodeTag]