PostgreSQL Source Code  git master
nodes.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Node
 

Macros

#define nodeTag(nodeptr)   (((const Node*)(nodeptr))->type)
 
#define newNode(size, tag)
 
#define makeNode(_type_)   ((_type_ *) newNode(sizeof(_type_),T_##_type_))
 
#define NodeSetTag(nodeptr, t)   (((Node*)(nodeptr))->type = (t))
 
#define IsA(nodeptr, _type_)   (nodeTag(nodeptr) == T_##_type_)
 
#define castNode(_type_, nodeptr)   ((_type_ *) (nodeptr))
 
#define copyObject(obj)   copyObjectImpl(obj)
 
#define IS_OUTER_JOIN(jointype)
 
#define AGGSPLITOP_COMBINE   0x01 /* substitute combinefn for transfn */
 
#define AGGSPLITOP_SKIPFINAL   0x02 /* skip finalfn, return state as-is */
 
#define AGGSPLITOP_SERIALIZE   0x04 /* apply serializefn to output */
 
#define AGGSPLITOP_DESERIALIZE   0x08 /* apply deserializefn to input */
 
#define DO_AGGSPLIT_COMBINE(as)   (((as) & AGGSPLITOP_COMBINE) != 0)
 
#define DO_AGGSPLIT_SKIPFINAL(as)   (((as) & AGGSPLITOP_SKIPFINAL) != 0)
 
#define DO_AGGSPLIT_SERIALIZE(as)   (((as) & AGGSPLITOP_SERIALIZE) != 0)
 
#define DO_AGGSPLIT_DESERIALIZE(as)   (((as) & AGGSPLITOP_DESERIALIZE) != 0)
 

Typedefs

typedef enum NodeTag NodeTag
 
typedef struct Node Node
 
typedef double Selectivity
 
typedef double Cost
 
typedef enum CmdType CmdType
 
typedef enum JoinType JoinType
 
typedef enum AggStrategy AggStrategy
 
typedef enum AggSplit AggSplit
 
typedef enum SetOpCmd SetOpCmd
 
typedef enum SetOpStrategy SetOpStrategy
 
typedef enum OnConflictAction OnConflictAction
 

Enumerations

enum  NodeTag {
  T_Invalid = 0, T_IndexInfo, T_ExprContext, T_ProjectionInfo,
  T_JunkFilter, T_OnConflictSetState, T_ResultRelInfo, T_EState,
  T_TupleTableSlot, T_Plan, T_Result, T_ProjectSet,
  T_ModifyTable, T_Append, T_MergeAppend, T_RecursiveUnion,
  T_BitmapAnd, T_BitmapOr, T_Scan, T_SeqScan,
  T_SampleScan, T_IndexScan, T_IndexOnlyScan, T_BitmapIndexScan,
  T_BitmapHeapScan, T_TidScan, T_SubqueryScan, T_FunctionScan,
  T_ValuesScan, T_TableFuncScan, T_CteScan, T_NamedTuplestoreScan,
  T_WorkTableScan, T_ForeignScan, T_CustomScan, T_Join,
  T_NestLoop, T_MergeJoin, T_HashJoin, T_Material,
  T_Sort, T_Group, T_Agg, T_WindowAgg,
  T_Unique, T_Gather, T_GatherMerge, T_Hash,
  T_SetOp, T_LockRows, T_Limit, T_NestLoopParam,
  T_PlanRowMark, T_PartitionPruneInfo, T_PartitionedRelPruneInfo, T_PartitionPruneStepOp,
  T_PartitionPruneStepCombine, T_PlanInvalItem, T_PlanState, T_ResultState,
  T_ProjectSetState, T_ModifyTableState, T_AppendState, T_MergeAppendState,
  T_RecursiveUnionState, T_BitmapAndState, T_BitmapOrState, T_ScanState,
  T_SeqScanState, T_SampleScanState, T_IndexScanState, T_IndexOnlyScanState,
  T_BitmapIndexScanState, T_BitmapHeapScanState, T_TidScanState, T_SubqueryScanState,
  T_FunctionScanState, T_TableFuncScanState, T_ValuesScanState, T_CteScanState,
  T_NamedTuplestoreScanState, T_WorkTableScanState, T_ForeignScanState, T_CustomScanState,
  T_JoinState, T_NestLoopState, T_MergeJoinState, T_HashJoinState,
  T_MaterialState, T_SortState, T_GroupState, T_AggState,
  T_WindowAggState, T_UniqueState, T_GatherState, T_GatherMergeState,
  T_HashState, T_SetOpState, T_LockRowsState, T_LimitState,
  T_Alias, T_RangeVar, T_TableFunc, T_Expr,
  T_Var, T_Const, T_Param, T_Aggref,
  T_GroupingFunc, T_WindowFunc, T_SubscriptingRef, T_FuncExpr,
  T_NamedArgExpr, T_OpExpr, T_DistinctExpr, T_NullIfExpr,
  T_ScalarArrayOpExpr, T_BoolExpr, T_SubLink, T_SubPlan,
  T_AlternativeSubPlan, T_FieldSelect, T_FieldStore, T_RelabelType,
  T_CoerceViaIO, T_ArrayCoerceExpr, T_ConvertRowtypeExpr, T_CollateExpr,
  T_CaseExpr, T_CaseWhen, T_CaseTestExpr, T_ArrayExpr,
  T_RowExpr, T_RowCompareExpr, T_CoalesceExpr, T_MinMaxExpr,
  T_SQLValueFunction, T_XmlExpr, T_NullTest, T_BooleanTest,
  T_CoerceToDomain, T_CoerceToDomainValue, T_SetToDefault, T_CurrentOfExpr,
  T_NextValueExpr, T_InferenceElem, T_TargetEntry, T_RangeTblRef,
  T_JoinExpr, T_FromExpr, T_OnConflictExpr, T_IntoClause,
  T_ExprState, T_AggrefExprState, T_WindowFuncExprState, T_SetExprState,
  T_SubPlanState, T_AlternativeSubPlanState, T_DomainConstraintState, T_PlannerInfo,
  T_PlannerGlobal, T_RelOptInfo, T_IndexOptInfo, T_ForeignKeyOptInfo,
  T_ParamPathInfo, T_Path, T_IndexPath, T_BitmapHeapPath,
  T_BitmapAndPath, T_BitmapOrPath, T_TidPath, T_SubqueryScanPath,
  T_ForeignPath, T_CustomPath, T_NestPath, T_MergePath,
  T_HashPath, T_AppendPath, T_MergeAppendPath, T_GroupResultPath,
  T_MaterialPath, T_UniquePath, T_GatherPath, T_GatherMergePath,
  T_ProjectionPath, T_ProjectSetPath, T_SortPath, T_GroupPath,
  T_UpperUniquePath, T_AggPath, T_GroupingSetsPath, T_MinMaxAggPath,
  T_WindowAggPath, T_SetOpPath, T_RecursiveUnionPath, T_LockRowsPath,
  T_ModifyTablePath, T_LimitPath, T_EquivalenceClass, T_EquivalenceMember,
  T_PathKey, T_PathTarget, T_RestrictInfo, T_IndexClause,
  T_PlaceHolderVar, T_SpecialJoinInfo, T_AppendRelInfo, T_PlaceHolderInfo,
  T_MinMaxAggInfo, T_PlannerParamItem, T_RollupData, T_GroupingSetData,
  T_StatisticExtInfo, T_MemoryContext, T_AllocSetContext, T_SlabContext,
  T_GenerationContext, T_Value, T_Integer, T_Float,
  T_String, T_BitString, T_Null, T_List,
  T_IntList, T_OidList, T_ExtensibleNode, T_RawStmt,
  T_Query, T_PlannedStmt, T_InsertStmt, T_DeleteStmt,
  T_UpdateStmt, T_SelectStmt, T_AlterTableStmt, T_AlterTableCmd,
  T_AlterDomainStmt, T_SetOperationStmt, T_GrantStmt, T_GrantRoleStmt,
  T_AlterDefaultPrivilegesStmt, T_ClosePortalStmt, T_ClusterStmt, T_CopyStmt,
  T_CreateStmt, T_DefineStmt, T_DropStmt, T_TruncateStmt,
  T_CommentStmt, T_FetchStmt, T_IndexStmt, T_CreateFunctionStmt,
  T_AlterFunctionStmt, T_DoStmt, T_RenameStmt, T_RuleStmt,
  T_NotifyStmt, T_ListenStmt, T_UnlistenStmt, T_TransactionStmt,
  T_ViewStmt, T_LoadStmt, T_CreateDomainStmt, T_CreatedbStmt,
  T_DropdbStmt, T_VacuumStmt, T_ExplainStmt, T_CreateTableAsStmt,
  T_CreateSeqStmt, T_AlterSeqStmt, T_VariableSetStmt, T_VariableShowStmt,
  T_DiscardStmt, T_CreateTrigStmt, T_CreatePLangStmt, T_CreateRoleStmt,
  T_AlterRoleStmt, T_DropRoleStmt, T_LockStmt, T_ConstraintsSetStmt,
  T_ReindexStmt, T_CheckPointStmt, T_CreateSchemaStmt, T_AlterDatabaseStmt,
  T_AlterDatabaseSetStmt, T_AlterRoleSetStmt, T_CreateConversionStmt, T_CreateCastStmt,
  T_CreateOpClassStmt, T_CreateOpFamilyStmt, T_AlterOpFamilyStmt, T_PrepareStmt,
  T_ExecuteStmt, T_DeallocateStmt, T_DeclareCursorStmt, T_CreateTableSpaceStmt,
  T_DropTableSpaceStmt, T_AlterObjectDependsStmt, T_AlterObjectSchemaStmt, T_AlterOwnerStmt,
  T_AlterOperatorStmt, T_DropOwnedStmt, T_ReassignOwnedStmt, T_CompositeTypeStmt,
  T_CreateEnumStmt, T_CreateRangeStmt, T_AlterEnumStmt, T_AlterTSDictionaryStmt,
  T_AlterTSConfigurationStmt, T_CreateFdwStmt, T_AlterFdwStmt, T_CreateForeignServerStmt,
  T_AlterForeignServerStmt, T_CreateUserMappingStmt, T_AlterUserMappingStmt, T_DropUserMappingStmt,
  T_AlterTableSpaceOptionsStmt, T_AlterTableMoveAllStmt, T_SecLabelStmt, T_CreateForeignTableStmt,
  T_ImportForeignSchemaStmt, T_CreateExtensionStmt, T_AlterExtensionStmt, T_AlterExtensionContentsStmt,
  T_CreateEventTrigStmt, T_AlterEventTrigStmt, T_RefreshMatViewStmt, T_ReplicaIdentityStmt,
  T_AlterSystemStmt, T_CreatePolicyStmt, T_AlterPolicyStmt, T_CreateTransformStmt,
  T_CreateAmStmt, T_CreatePublicationStmt, T_AlterPublicationStmt, T_CreateSubscriptionStmt,
  T_AlterSubscriptionStmt, T_DropSubscriptionStmt, T_CreateStatsStmt, T_AlterCollationStmt,
  T_CallStmt, T_A_Expr, T_ColumnRef, T_ParamRef,
  T_A_Const, T_FuncCall, T_A_Star, T_A_Indices,
  T_A_Indirection, T_A_ArrayExpr, T_ResTarget, T_MultiAssignRef,
  T_TypeCast, T_CollateClause, T_SortBy, T_WindowDef,
  T_RangeSubselect, T_RangeFunction, T_RangeTableSample, T_RangeTableFunc,
  T_RangeTableFuncCol, T_TypeName, T_ColumnDef, T_IndexElem,
  T_Constraint, T_DefElem, T_RangeTblEntry, T_RangeTblFunction,
  T_TableSampleClause, T_WithCheckOption, T_SortGroupClause, T_GroupingSet,
  T_WindowClause, T_ObjectWithArgs, T_AccessPriv, T_CreateOpClassItem,
  T_TableLikeClause, T_FunctionParameter, T_LockingClause, T_RowMarkClause,
  T_XmlSerialize, T_WithClause, T_InferClause, T_OnConflictClause,
  T_CommonTableExpr, T_RoleSpec, T_TriggerTransition, T_PartitionElem,
  T_PartitionSpec, T_PartitionBoundSpec, T_PartitionRangeDatum, T_PartitionCmd,
  T_VacuumRelation, T_IdentifySystemCmd, T_BaseBackupCmd, T_CreateReplicationSlotCmd,
  T_DropReplicationSlotCmd, T_StartReplicationCmd, T_TimeLineHistoryCmd, T_SQLCmd,
  T_TriggerData, T_EventTriggerData, T_ReturnSetInfo, T_WindowObjectData,
  T_TIDBitmap, T_InlineCodeBlock, T_FdwRoutine, T_IndexAmRoutine,
  T_TableAmRoutine, T_TsmRoutine, T_ForeignKeyCacheInfo, T_CallContext,
  T_SupportRequestSimplify, T_SupportRequestSelectivity, T_SupportRequestCost, T_SupportRequestRows,
  T_SupportRequestIndexCondition
}
 
enum  CmdType {
  CMD_UNKNOWN, CMD_SELECT, CMD_UPDATE, CMD_INSERT,
  CMD_DELETE, CMD_UTILITY, CMD_NOTHING
}
 
enum  JoinType {
  JOIN_INNER, JOIN_LEFT, JOIN_FULL, JOIN_RIGHT,
  JOIN_SEMI, JOIN_ANTI, JOIN_UNIQUE_OUTER, JOIN_UNIQUE_INNER
}
 
enum  AggStrategy { AGG_PLAIN, AGG_SORTED, AGG_HASHED, AGG_MIXED }
 
enum  AggSplit { AGGSPLIT_SIMPLE = 0, AGGSPLIT_INITIAL_SERIAL = AGGSPLITOP_SKIPFINAL | AGGSPLITOP_SERIALIZE, AGGSPLIT_FINAL_DESERIAL = AGGSPLITOP_COMBINE | AGGSPLITOP_DESERIALIZE }
 
enum  SetOpCmd { SETOPCMD_INTERSECT, SETOPCMD_INTERSECT_ALL, SETOPCMD_EXCEPT, SETOPCMD_EXCEPT_ALL }
 
enum  SetOpStrategy { SETOP_SORTED, SETOP_HASHED }
 
enum  OnConflictAction { ONCONFLICT_NONE, ONCONFLICT_NOTHING, ONCONFLICT_UPDATE }
 

Functions

void outNode (struct StringInfoData *str, const void *obj)
 
void outToken (struct StringInfoData *str, const char *s)
 
void outBitmapset (struct StringInfoData *str, const struct Bitmapset *bms)
 
void outDatum (struct StringInfoData *str, uintptr_t value, int typlen, bool typbyval)
 
char * nodeToString (const void *obj)
 
char * bmsToString (const struct Bitmapset *bms)
 
void * stringToNode (const char *str)
 
struct BitmapsetreadBitmapset (void)
 
uintptr_t readDatum (bool typbyval)
 
boolreadBoolCols (int numCols)
 
int * readIntCols (int numCols)
 
OidreadOidCols (int numCols)
 
int16readAttrNumberCols (int numCols)
 
void * copyObjectImpl (const void *obj)
 
bool equal (const void *a, const void *b)
 

Variables

PGDLLIMPORT NodenewNodeMacroHolder
 

Macro Definition Documentation

◆ AGGSPLITOP_COMBINE

#define AGGSPLITOP_COMBINE   0x01 /* substitute combinefn for transfn */

Definition at line 769 of file nodes.h.

◆ AGGSPLITOP_DESERIALIZE

#define AGGSPLITOP_DESERIALIZE   0x08 /* apply deserializefn to input */

Definition at line 772 of file nodes.h.

◆ AGGSPLITOP_SERIALIZE

#define AGGSPLITOP_SERIALIZE   0x04 /* apply serializefn to output */

Definition at line 771 of file nodes.h.

◆ AGGSPLITOP_SKIPFINAL

#define AGGSPLITOP_SKIPFINAL   0x02 /* skip finalfn, return state as-is */

Definition at line 770 of file nodes.h.

◆ castNode

#define castNode (   _type_,
  nodeptr 
)    ((_type_ *) (nodeptr))

Definition at line 593 of file nodes.h.

Referenced by AddRelationNewConstraints(), adjust_view_column_set(), ATExecAddIdentity(), ATExecAlterConstraint(), ATExecSetIdentity(), ATExecSetOptions(), ATPostAlterTypeParse(), ATRewriteCatalogs(), check_new_partition_bound(), check_object_ownership(), check_sql_fn_statements(), commute_restrictinfo(), ComputePartitionAttrs(), conversion_error_callback(), CopyFrom(), create_bitmap_subplan(), create_customscan_plan(), create_list_bounds(), create_scan_plan(), CreateFunction(), does_not_exist_skipping(), eval_const_expressions_mutator(), exec_save_simple_expr(), ExecAgg(), ExecAlterObjectSchemaStmt(), ExecAlterOwnerStmt(), ExecAppend(), ExecBitmapHeapScan(), ExecCreateTableAs(), ExecCteScan(), ExecCustomScan(), ExecForeignScan(), ExecFunctionScan(), ExecGather(), ExecGatherMerge(), ExecGroup(), ExecHashJoinImpl(), ExecIndexOnlyScan(), ExecIndexScan(), ExecInitAgg(), ExecInitCteScan(), ExecInitCustomScan(), ExecInitPartitionInfo(), ExecInitSubPlan(), ExecLimit(), ExecLockRows(), ExecMaterial(), ExecMergeAppend(), ExecMergeJoin(), ExecModifyTable(), ExecNamedTuplestoreScan(), ExecNestLoop(), ExecProjectSet(), ExecRecursiveUnion(), ExecResult(), ExecSampleScan(), ExecSeqScan(), ExecSetOp(), ExecSort(), ExecSubqueryScan(), ExecSupportsMarkRestore(), ExecTableFuncScan(), ExecTidScan(), ExecUnique(), ExecValuesScan(), ExecWindowAgg(), ExecWorkTableScan(), ExplainNode(), ExplainOneUtility(), ExplainQuery(), extract_or_clause(), fetch_function_defaults(), flatten_simple_union_all(), func_get_detail(), gather_merge_init(), gather_merge_setup(), generate_bitmap_or_paths(), generate_partition_qual(), generateSerialExtraStmts(), get_altertable_subcmdtypes(), get_object_address(), get_qual_for_list(), get_qual_for_range(), get_range_key_properties(), get_range_partbound_string(), get_rule_expr(), have_partkey_equi_join(), inline_cte(), is_simple_union_all(), JumbleExpr(), make_one_partition_rbound(), make_row_comparison_op(), make_subplan(), match_clause_to_partition_key(), match_expr_to_partition_keys(), OpenTableList(), PerformCursorOpen(), pg_get_function_arg_default(), pg_rewrite_query(), plan_set_operations(), plperl_func_handler(), plpgsql_call_handler(), plpgsql_inline_handler(), plpython_call_handler(), pltcl_func_handler(), postgresBeginForeignInsert(), print_function_arguments(), ProcedureCreate(), process_subquery_nestloop_params(), ProcessCopyOptions(), query_is_distinct_for(), rel_is_distinct_for(), RemoveObjects(), RenameConstraint(), RenameType(), RewriteQuery(), ScanQueryForLocks(), ScanQueryWalker(), set_rel_consider_parallel(), setRuleCheckAsUser_Query(), ShutdownSetExpr(), SlabAlloc(), SlabFree(), SlabGetChunkSpace(), SlabIsEmpty(), SlabRealloc(), SlabReset(), SlabStats(), standard_ProcessUtility(), subquery_is_pushdown_safe(), TemporalSimplify(), test_predtest(), TidQualFromRestrictInfoList(), transformAExprBetween(), transformAExprOp(), transformAlterTableStmt(), transformCallStmt(), transformFromClauseItem(), transformIndexConstraint(), transformMultiAssignRef(), transformPartitionBound(), transformPartitionSpec(), transformSetOperationStmt(), transformWindowDefinitions(), unique_key_recheck(), UtilityContainsQuery(), and validateInfiniteBounds().

◆ copyObject

#define copyObject (   obj)    copyObjectImpl(obj)

Definition at line 640 of file nodes.h.

Referenced by add_placeholders_to_base_rels(), add_security_quals(), add_sp_item_to_pathtarget(), add_to_flat_tlist(), add_vars_to_targetlist(), add_with_check_options(), addFkRecurseReferencing(), AddQual(), addRangeTableEntryForCTE(), addRangeTableEntryForJoin(), addRangeTableEntryForSubquery(), addRangeTableEntryForTableFunc(), addRangeTableEntryForValues(), adjust_appendrel_attrs_mutator(), adjustJoinTreeList(), AlterPolicy(), analyzeCTETargetList(), ApplyRetrieveRule(), assign_param_for_placeholdervar(), assign_param_for_var(), ATAddCheckConstraint(), ATExecAddColumn(), ATExecDetachPartition(), ATPrepAlterColumnType(), ATPrepCmd(), BeginCopy(), build_implied_join_equality(), build_minmax_path(), BuildCachedPlan(), CloneFkReferencing(), CompleteCachedPlan(), compute_semijoin_info(), convert_combining_aggrefs(), convert_EXISTS_sublink_to_join(), convert_testexpr_mutator(), ConvertTriggerToFK(), CopyAndAddInvertedQual(), CopyCachedPlan(), create_ctas_internal(), create_scan_plan(), CreateCachedPlan(), CreatePolicy(), CreateTrigger(), DefineIndex(), DefineView(), eval_const_expressions_mutator(), EvaluateParams(), EventTriggerAlterTableStart(), EventTriggerCollectAlterDefPrivs(), EventTriggerCollectAlterOpFam(), EventTriggerCollectAlterTableSubcmd(), EventTriggerCollectAlterTSConfig(), EventTriggerCollectCreateOpClass(), EventTriggerCollectGrant(), EventTriggerCollectSimpleCommand(), ExecCreateTableAs(), ExecInitPartitionInfo(), ExecSerializePlan(), expand_indexqual_rowcompare(), expand_single_inheritance_child(), ExpandIndirectionStar(), ExpandRowReference(), ExplainOneUtility(), ExplainQuery(), expression_tree_mutator(), extract_lateral_references(), FetchPreparedStatementTargetList(), find_placeholder_info(), find_var_for_subquery_tle(), fireRules(), fix_indexqual_operand(), fix_param_node(), fix_scan_expr_mutator(), fix_upper_expr_mutator(), flatten_join_alias_vars_mutator(), flatten_simple_union_all(), generate_partition_qual(), generate_setop_grouplist(), get_eclass_for_sort_expr(), get_qual_for_hash(), get_qual_for_list(), get_range_key_properties(), get_range_nulltest(), GetCachedExpression(), grouping_planner(), index_register(), inheritance_planner(), inline_cte_walker(), inline_function(), inline_set_returning_function(), make_subplan(), PerformCursorOpen(), pg_parse_query(), pg_plan_query(), pg_rewrite_query(), postgresBeginForeignInsert(), prepare_sort_from_pathkeys(), PrepareQuery(), process_implied_equality(), process_subquery_nestloop_params(), pull_up_simple_subquery(), pull_up_simple_union_all(), pull_up_simple_values(), pullup_replace_vars_callback(), query_tree_mutator(), range_table_mutator(), RebuildConstraintComment(), refresh_matview_datafill(), RelationBuildPartitionKey(), RelationBuildRowSecurity(), RelationGetFKeyList(), RelationGetIndexExpressions(), RelationGetIndexPredicate(), replace_domain_constraint_value(), replace_nestloop_param_placeholdervar(), replace_nestloop_param_var(), replace_outer_agg(), replace_outer_grouping(), ReplaceVarsFromTargetList_callback(), RevalidateCachedQuery(), rewriteRuleAction(), rewriteTargetView(), set_baserel_partition_key_exprs(), set_plan_refs(), set_subquery_pathlist(), SPI_cursor_open_internal(), SS_process_ctes(), subquery_planner(), substitute_actual_srf_parameters_mutator(), test_rls_hooks_permissive(), test_rls_hooks_restrictive(), transformAExprBetween(), transformAExprIn(), transformAlterTableStmt(), transformCreateStmt(), transformCreateTableAsStmt(), transformDistinctClause(), transformDistinctOnClause(), transformGroupClauseExpr(), transformIndexConstraint(), transformIndexStmt(), transformJoinUsingClause(), transformPartitionBound(), transformPartitionSpec(), transformRuleStmt(), transformWindowDefinitions(), UpdateRangeTableOfViewParse(), and verify_dictoptions().

◆ DO_AGGSPLIT_COMBINE

#define DO_AGGSPLIT_COMBINE (   as)    (((as) & AGGSPLITOP_COMBINE) != 0)

◆ DO_AGGSPLIT_DESERIALIZE

#define DO_AGGSPLIT_DESERIALIZE (   as)    (((as) & AGGSPLITOP_DESERIALIZE) != 0)

Definition at line 789 of file nodes.h.

Referenced by ExecInitAgg(), and get_agg_clause_costs_walker().

◆ DO_AGGSPLIT_SERIALIZE

#define DO_AGGSPLIT_SERIALIZE (   as)    (((as) & AGGSPLITOP_SERIALIZE) != 0)

Definition at line 788 of file nodes.h.

Referenced by ExecInitAgg(), get_agg_clause_costs_walker(), and mark_partial_aggref().

◆ DO_AGGSPLIT_SKIPFINAL

#define DO_AGGSPLIT_SKIPFINAL (   as)    (((as) & AGGSPLITOP_SKIPFINAL) != 0)

◆ IS_OUTER_JOIN

◆ IsA

#define IsA (   nodeptr,
  _type_ 
)    (nodeTag(nodeptr) == T_##_type_)

Definition at line 575 of file nodes.h.

Referenced by _int_matchsel(), _outList(), _SPI_execute_plan(), accumulate_append_subpath(), acquireLocksOnSubLinks(), AcquireRewriteLocks(), add_base_rels_to_query(), add_foreign_final_paths(), add_path(), add_vars_to_targetlist(), AddQual(), addRangeTableEntryForCTE(), AddRelationNewConstraints(), adjust_appendrel_attrs(), adjust_appendrel_attrs_mutator(), adjust_inherited_tlist(), adjust_view_column_set(), adjustJoinTreeList(), AggCheckCallContext(), AggGetAggref(), AggGetTempMemoryContext(), AggRegisterCallback(), AggStateIsShared(), AlterDomainAddConstraint(), AlterDomainDefault(), AlterTableGetLockLevel(), analyzeCTE(), appendConditions(), apply_child_basequals(), apply_pathtarget_labeling_to_tlist(), apply_projection_to_path(), array_unnest_support(), arraycontsel(), assign_param_for_placeholdervar(), assign_param_for_var(), assign_query_collations_walker(), ATColumnChangeRequiresRewrite(), ATExecAddConstraint(), ATExecAddIndex(), ATExecAddIndexConstraint(), ATExecSetStatistics(), ATExecSetStorage(), ATPostAlterTypeParse(), BeginCopy(), bernoulli_samplescangetsamplesize(), bitmap_subplan_mark_shared(), BitmapHeapNext(), brin_page_items(), btcostestimate(), build_index_paths(), build_joinrel_tlist(), build_physical_tlist(), build_remote_returning(), build_subplan(), build_tlist_index(), build_tlist_index_other_vars(), buildMergedJoinVar(), canonicalize_ec_expression(), canonicalize_qual(), ChangeVarNodes(), ChangeVarNodes_walker(), check_agg_arguments_walker(), check_agglevels_and_constraints(), check_constant_qual(), check_functional_grouping(), check_nested_generated_walker(), check_parameter_resolution_walker(), check_sql_fn_statements(), check_ungrouped_columns_walker(), checkExprHasSubLink_walker(), checkWellFormedRecursion(), checkWellFormedRecursionWalker(), ChooseExtendedStatisticNameAddition(), ChoosePortalStrategy(), chooseScalarFunctionAlias(), clause_is_strict_for(), clause_selectivity(), clauselist_selectivity_simple(), coerce_record_to_complex(), coerce_to_target_type(), coerce_type(), CommandIsReadOnly(), compute_semijoin_info(), ComputeIndexAttrs(), ComputePartitionAttrs(), connectby_text(), connectby_text_serial(), contain_agg_clause_walker(), contain_aggs_of_level_walker(), contain_context_dependent_node_walker(), contain_dml_walker(), contain_mutable_functions_walker(), contain_non_const_walker(), contain_nonstrict_functions_walker(), contain_outer_selfref(), contain_outer_selfref_walker(), contain_subplans_walker(), contain_var_clause_walker(), contain_vars_of_level_walker(), contain_volatile_functions_not_nextval_walker(), contain_volatile_functions_walker(), contain_windowfuncs_walker(), contains_multiexpr_param(), contains_target_param(), conversion_error_callback(), convert_combining_aggrefs(), convert_EXISTS_to_ANY(), convert_testexpr_mutator(), cost_bitmap_heap_scan(), cost_bitmap_or_node(), cost_bitmap_tree_node(), cost_index(), cost_qual_eval_walker(), cost_tidscan(), count_rowexpr_columns(), create_bitmap_subplan(), create_gating_plan(), create_hashjoin_plan(), create_lateral_join_info(), create_plan(), create_plan_recurse(), createdb(), CreateStatistics(), crosstab(), crosstab_hash(), currtid_for_view(), deconstruct_jointree(), deconstruct_recurse(), defGetStringList(), DefineDomain(), DefineView(), deflist_to_tuplestore(), deparseSortGroupClause(), deparseSubscriptingRef(), dependency_is_compatible_clause(), determineRecursiveColTypes(), each_worker(), each_worker_jsonb(), ec_member_matches_ctid(), elements_worker(), elements_worker_jsonb(), eqsel_internal(), errdetail_execute(), estimate_array_length(), estimate_multivariate_ndistinct(), eval_const_expressions_mutator(), evaluate_function(), EventTriggerCollectAlterTableSubcmd(), examine_simple_variable(), examine_variable(), exec_check_rw_parameter(), exec_init_tuple_store(), exec_replication_command(), exec_save_simple_expr(), exec_simple_check_plan(), exec_simple_query(), exec_stmt_call(), ExecBuildProjectionInfo(), ExecCheckPlanOutput(), ExecCreateTableAs(), execCurrentOf(), ExecDropSingleTupleTableSlot(), ExecIndexBuildScanKeys(), ExecInitCheck(), ExecInitExprRec(), ExecInitFunc(), ExecInitFunctionResultSet(), ExecInitMergeJoin(), ExecInitNode(), ExecInitProjectSet(), ExecInitPruningContext(), ExecInitQual(), ExecInitSubPlan(), ExecInitTableFunctionResult(), ExecNestLoop(), ExecProjectSRF(), ExecScanReScan(), ExecSetTupleBound(), ExecSupportsMarkRestore(), execute_sql_string(), ExecuteCallStmt(), expand_function_arguments(), expandRecordVariable(), ExpandRowReference(), ExplainNode(), ExplainOneUtility(), ExplainPrintPlan(), ExplainTargetRel(), exprCollation(), expression_returns_set_rows(), expression_returns_set_walker(), exprIsLengthCoercion(), exprIsNullConstant(), exprSetCollation(), exprType(), exprTypmod(), extract_lateral_references(), extract_not_arg(), extract_query_dependencies_walker(), extract_strong_not_arg(), fetch_more_data(), FetchStatementTargetList(), FigureColnameInternal(), final_cost_hashjoin(), final_cost_mergejoin(), finalize_agg_primnode(), finalize_grouping_exprs_walker(), finalize_primnode(), find_dependent_phvs_walker(), find_duplicate_ors(), find_ec_member_for_tle(), find_em_expr_for_input_target(), find_expr_references_walker(), find_forced_null_var(), find_forced_null_vars(), find_indexpath_quals(), find_jointree_node_for_rel(), find_minmax_aggs_walker(), find_nonnullable_rels_walker(), find_nonnullable_vars_walker(), find_param_referent(), find_placeholders_in_expr(), find_placeholders_in_jointree(), find_placeholders_recurse(), find_single_rel_for_clauses(), find_unaggregated_cols_walker(), find_var_for_subquery_tle(), find_window_functions_walker(), findTargetlistEntrySQL92(), fireRIRonSubLink(), fix_expr_common(), fix_indexqual_clause(), fix_indexqual_operand(), fix_join_expr_mutator(), fix_opfuncids_walker(), fix_scan_expr_mutator(), fix_scan_expr_walker(), fix_upper_expr_mutator(), flatCopyTargetEntry(), flatten_grouping_sets(), flatten_join_alias_vars_mutator(), flatten_join_using_qual(), flatten_rtes_walker(), flatten_set_variable_args(), flatten_simple_union_all(), fmgr_security_definer(), fmgr_sql(), foreign_expr_walker(), foreign_grouping_ok(), func_get_detail(), gen_partprune_steps_internal(), generate_base_implied_equalities_const(), generate_join_implied_equalities_normal(), generate_partitionwise_join_paths(), generate_series_int4_support(), generate_series_int8_support(), generate_setop_tlist(), genericcostestimate(), get_agg_clause_costs_walker(), get_agg_combine_expr(), get_agg_expr(), get_assignment_input(), get_bitmap_tree_required_outer(), get_call_expr_arg_stable(), get_call_expr_argtype(), get_cast_hashentry(), get_coercion_expr(), get_expr_result_type(), get_fn_expr_variadic(), get_from_clause(), get_from_clause_item(), get_func_expr(), get_indexpath_pages(), get_last_attnums_walker(), get_name_for_var_field(), get_parameter(), get_partkey_exec_paramids(), get_qual_for_range(), get_relids_in_jointree(), get_result_relid(), get_rule_expr(), get_rule_expr_toplevel(), get_rule_sortgroupclause(), get_select_query_def(), get_setop_query(), get_singleton_append_subpath(), get_special_variable(), get_sublink_expr(), get_target_list(), get_update_query_targetlist_def(), get_utility_query_def(), get_variable(), get_variable_numdistinct(), get_windowfunc_expr(), GetExistingLocalJoinPath(), GetFdwRoutine(), GetIndexAmRoutine(), getInsertSelectQuery(), GetTableAmRoutine(), GetTsmRoutine(), gincost_opexpr(), gincost_scalararrayopexpr(), gincostestimate(), has_dangerous_join_using(), has_indexed_join_quals(), hide_coercion_node(), identify_current_nestloop_params(), identify_join_columns(), ImportForeignSchema(), IncrementVarSublevelsUp_walker(), index_other_operands_eval_cost(), infer_arbiter_indexes(), infer_collation_opclass_match(), init_execution_state(), init_MultiFuncCall(), init_returning_filter(), inline_cte_walker(), inline_function(), inline_set_returning_function(), internal_get_result_type(), interval_support(), is_andclause(), is_dummy_rel(), is_funcclause(), is_notclause(), is_opclause(), is_orclause(), is_safe_append_member(), is_simple_subquery(), is_simple_union_all(), is_simple_union_all_recurse(), is_strict_saop(), isAssignmentIndirectionExpr(), IsCurrentOfClause(), isQueryUsingTempRelation_walker(), isSimpleNode(), IsTidEqualAnyClause(), IsTidEqualClause(), IsTransactionExitStmt(), IsTransactionStmtList(), jointree_contains_lateral_outer_refs(), JumbleQuery(), like_regex_support(), limit_needed(), list_copy_deep(), list_nth(), list_nth_int(), list_nth_oid(), locate_agg_of_level_walker(), locate_var_of_level_walker(), locate_windowfunc_walker(), LockViewRecurse_walker(), ltreeparentsel(), make_ands_implicit(), make_fn_arguments(), make_partial_grouping_target(), make_partition_op_expr(), make_rel_from_joinlist(), make_subplan(), makeDependencyGraphWalker(), map_variable_attnos_mutator(), markQueryForLocking(), markRTEForSelectPriv(), markTargetListOrigin(), markVarForSelectPriv(), match_boolean_index_clause(), match_boolean_partition_clause(), match_clause_to_indexcol(), match_clause_to_partition_key(), match_eclasses_to_foreign_key_col(), match_expr_to_partition_keys(), match_foreign_keys_to_quals(), match_index_to_operand(), match_network_subset(), match_pattern_prefix(), max_parallel_hazard_walker(), mcv_get_match_bitmap(), MJExamineQuals(), MultiExecBitmapAnd(), MultiExecBitmapOr(), NameListToString(), network_subset_support(), networksel(), nulltestsel(), numeric_support(), OffsetVarNodes(), OffsetVarNodes_walker(), operator_precedence_group(), operator_predicate_proof(), order_qual_clauses(), outNode(), parse_output_parameters(), parseCheckAggregates(), ParseComplexProjection(), ParseFuncOrColumn(), partkey_datum_from_expr(), patternsel_common(), pg_available_extension_versions(), pg_available_extensions(), pg_cursor(), pg_decode_startup(), pg_event_trigger_ddl_commands(), pg_event_trigger_dropped_objects(), pg_extension_update_paths(), pg_get_partkeydef_worker(), pg_get_replication_slots(), pg_hba_file_rules(), pg_logical_slot_get_changes_guts(), pg_prepared_statement(), pg_show_replication_origin_status(), pg_stat_get_activity(), pg_stat_get_progress_info(), pg_stat_get_subscription(), pg_stat_get_wal_senders(), pg_stat_statements_internal(), pg_stop_backup_v2(), pgss_ProcessUtility(), plan_set_operations(), plan_union_children(), plperl_func_handler(), plpgsql_call_handler(), plpgsql_exec_function(), plpython_call_handler(), pltcl_func_handler(), PLy_exec_function(), populate_recordset_worker(), PortalRunMulti(), PortalRunUtility(), postgresGetForeignPlan(), postgresPlanDirectModify(), predicate_classify(), predicate_implied_by_recurse(), predicate_implied_by_simple_clause(), predicate_refuted_by_recurse(), predicate_refuted_by_simple_clause(), preprocess_limit(), preprocess_minmax_aggregates(), preprocess_qual_conditions(), preprocess_targetlist(), prepTuplestoreResult(), print_expr(), process_implied_equality(), process_matched_tle(), process_sublinks_mutator(), process_subquery_nestloop_params(), ProcessCopyOptions(), processIndirection(), ProcessUtility(), ProcessUtilitySlow(), pull_exec_paramids_walker(), pull_up_simple_subquery(), pull_up_sublinks(), pull_up_sublinks_jointree_recurse(), pull_up_sublinks_qual_recurse(), pull_up_subqueries(), pull_up_subqueries_recurse(), pull_up_union_leaf_queries(), pull_var_clause_walker(), pull_varattnos_walker(), pull_varnos_walker(), pull_vars_walker(), pullup_replace_vars_callback(), pullup_replace_vars_subquery(), qual_is_pushdown_safe(), query_contains_extern_params_walker(), query_or_expression_tree_mutator(), query_or_expression_tree_walker(), query_planner(), query_tree_mutator(), query_tree_walker(), rangesel(), rangeTableEntry_used_walker(), RangeVarCallbackForAlterRelation(), reconsider_full_join_clause(), recurse_push_qual(), recurse_pushdown_safe(), recurse_set_operations(), reduce_outer_joins_pass1(), reduce_outer_joins_pass2(), rel_is_distinct_for(), relabel_to_typmod(), relation_excluded_by_constraints(), RelationBuildPartitionDesc(), remove_rel_from_joinlist(), remove_useless_groupby_columns(), remove_useless_result_rtes(), remove_useless_results_recurse(), reorder_function_arguments(), reparameterize_path(), replace_correlation_vars_mutator(), replace_domain_constraint_value(), replace_nestloop_params_mutator(), replace_rte_variables(), replace_rte_variables_mutator(), replace_vars_in_jointree(), resolve_column_ref(), resolve_special_varno(), restriction_is_constant_false(), RewriteQuery(), rewriteTargetListIU(), rewriteTargetView(), rewriteValuesRTE(), scalararraysel(), scalararraysel_containment(), scalarineqsel(), scalarineqsel_wrapper(), ScanQueryWalker(), search_indexed_tlist_for_non_var(), searchForDefault(), select_mergejoin_clauses(), set_append_rel_size(), set_cheapest(), set_deparse_planstate(), set_dummy_tlist_references(), set_function_pathlist(), set_join_references(), set_param_references(), set_pathtarget_cost_width(), set_rel_width(), set_subquery_size_estimates(), set_using_names(), setRuleCheckAsUser_walker(), show_all_file_settings(), show_plan_tlist(), show_scan_qual(), simplify_and_arguments(), simplify_boolean_equality(), simplify_EXISTS_query(), simplify_or_arguments(), split_pathtarget_walker(), sql_fn_post_column_ref(), statext_is_compatible_clause(), statext_is_compatible_clause_internal(), strip_array_coercion(), strip_implicit_coercions(), substitute_actual_parameters_mutator(), substitute_actual_srf_parameters_mutator(), substitute_phv_relids_walker(), system_rows_samplescangetsamplesize(), system_samplescangetsamplesize(), system_time_samplescangetsamplesize(), TemporalSimplify(), test_support_func(), testexpr_is_hashable(), TidExprListCreate(), time_support(), timestamp_support(), tlist_matches_tupdesc(), tlist_member_ignore_relabel(), tlist_member_match_var(), transformAExprDistinct(), transformAExprIn(), transformAExprOp(), transformAlterTableStmt(), transformArrayExpr(), transformAssignedExpr(), transformAssignmentIndirection(), transformColumnRef(), transformConstraintAttrs(), transformCreateStmt(), transformCurrentOfExpr(), transformDeclareCursorStmt(), transformExpressionList(), transformFromClauseItem(), transformGroupClause(), transformGroupingSet(), transformIndirection(), transformInsertRow(), transformInsertStmt(), transformMultiAssignRef(), transformOptionalSelectInto(), transformPartitionBoundValue(), transformPartitionRangeBounds(), transformRangeFunction(), transformRangeSubselect(), transformRangeTableFunc(), transformSetOperationStmt(), transformSetOperationTree(), transformSubLink(), transformTargetEntry(), transformTargetList(), transformTypeCast(), transformWithClause(), transformXmlExpr(), translate_sub_tlist(), trivial_subqueryscan(), tsmatchsel(), typenameTypeMod(), typeStringToTypeName(), unknown_attribute(), use_physical_tlist(), varbit_support(), varchar_support(), view_col_is_auto_updatable(), view_query_is_auto_updatable(), xml_is_well_formed_content(), and xpath_table().

◆ makeNode

#define makeNode (   _type_)    ((_type_ *) newNode(sizeof(_type_),T_##_type_))

Definition at line 572 of file nodes.h.

Referenced by _copyA_ArrayExpr(), _copyA_Indirection(), _copyAccessPriv(), _copyAConst(), _copyAExpr(), _copyAgg(), _copyAggref(), _copyAIndices(), _copyAlias(), _copyAlterCollationStmt(), _copyAlterDatabaseSetStmt(), _copyAlterDatabaseStmt(), _copyAlterDefaultPrivilegesStmt(), _copyAlterDomainStmt(), _copyAlterEnumStmt(), _copyAlterEventTrigStmt(), _copyAlterExtensionContentsStmt(), _copyAlterExtensionStmt(), _copyAlterFdwStmt(), _copyAlterForeignServerStmt(), _copyAlterFunctionStmt(), _copyAlternativeSubPlan(), _copyAlterObjectDependsStmt(), _copyAlterObjectSchemaStmt(), _copyAlterOperatorStmt(), _copyAlterOpFamilyStmt(), _copyAlterOwnerStmt(), _copyAlterPolicyStmt(), _copyAlterPublicationStmt(), _copyAlterRoleSetStmt(), _copyAlterRoleStmt(), _copyAlterSeqStmt(), _copyAlterSubscriptionStmt(), _copyAlterSystemStmt(), _copyAlterTableCmd(), _copyAlterTableMoveAllStmt(), _copyAlterTableSpaceOptionsStmt(), _copyAlterTableStmt(), _copyAlterTSConfigurationStmt(), _copyAlterTSDictionaryStmt(), _copyAlterUserMappingStmt(), _copyAppend(), _copyAppendRelInfo(), _copyArrayCoerceExpr(), _copyArrayExpr(), _copyAStar(), _copyBitmapAnd(), _copyBitmapHeapScan(), _copyBitmapIndexScan(), _copyBitmapOr(), _copyBooleanTest(), _copyBoolExpr(), _copyCallStmt(), _copyCaseExpr(), _copyCaseTestExpr(), _copyCaseWhen(), _copyClosePortalStmt(), _copyClusterStmt(), _copyCoalesceExpr(), _copyCoerceToDomain(), _copyCoerceToDomainValue(), _copyCoerceViaIO(), _copyCollateClause(), _copyCollateExpr(), _copyColumnDef(), _copyColumnRef(), _copyCommentStmt(), _copyCommonTableExpr(), _copyCompositeTypeStmt(), _copyConst(), _copyConstraint(), _copyConstraintsSetStmt(), _copyConvertRowtypeExpr(), _copyCopyStmt(), _copyCreateAmStmt(), _copyCreateCastStmt(), _copyCreateConversionStmt(), _copyCreatedbStmt(), _copyCreateDomainStmt(), _copyCreateEnumStmt(), _copyCreateEventTrigStmt(), _copyCreateExtensionStmt(), _copyCreateFdwStmt(), _copyCreateForeignServerStmt(), _copyCreateForeignTableStmt(), _copyCreateFunctionStmt(), _copyCreateOpClassItem(), _copyCreateOpClassStmt(), _copyCreateOpFamilyStmt(), _copyCreatePLangStmt(), _copyCreatePolicyStmt(), _copyCreatePublicationStmt(), _copyCreateRangeStmt(), _copyCreateRoleStmt(), _copyCreateSchemaStmt(), _copyCreateSeqStmt(), _copyCreateStatsStmt(), _copyCreateStmt(), _copyCreateSubscriptionStmt(), _copyCreateTableAsStmt(), _copyCreateTableSpaceStmt(), _copyCreateTransformStmt(), _copyCreateTrigStmt(), _copyCreateUserMappingStmt(), _copyCteScan(), _copyCurrentOfExpr(), _copyCustomScan(), _copyDeallocateStmt(), _copyDeclareCursorStmt(), _copyDefElem(), _copyDefineStmt(), _copyDeleteStmt(), _copyDiscardStmt(), _copyDistinctExpr(), _copyDoStmt(), _copyDropdbStmt(), _copyDropOwnedStmt(), _copyDropRoleStmt(), _copyDropStmt(), _copyDropSubscriptionStmt(), _copyDropTableSpaceStmt(), _copyDropUserMappingStmt(), _copyExecuteStmt(), _copyExplainStmt(), _copyFetchStmt(), _copyFieldSelect(), _copyFieldStore(), _copyForeignKeyCacheInfo(), _copyForeignScan(), _copyFromExpr(), _copyFuncCall(), _copyFuncExpr(), _copyFunctionParameter(), _copyFunctionScan(), _copyGather(), _copyGatherMerge(), _copyGrantRoleStmt(), _copyGrantStmt(), _copyGroup(), _copyGroupingFunc(), _copyGroupingSet(), _copyHash(), _copyHashJoin(), _copyImportForeignSchemaStmt(), _copyIndexElem(), _copyIndexOnlyScan(), _copyIndexScan(), _copyIndexStmt(), _copyInferClause(), _copyInferenceElem(), _copyInsertStmt(), _copyIntoClause(), _copyJoin(), _copyJoinExpr(), _copyLimit(), _copyListenStmt(), _copyLoadStmt(), _copyLockingClause(), _copyLockRows(), _copyLockStmt(), _copyMaterial(), _copyMergeAppend(), _copyMergeJoin(), _copyMinMaxExpr(), _copyModifyTable(), _copyMultiAssignRef(), _copyNamedArgExpr(), _copyNamedTuplestoreScan(), _copyNestLoop(), _copyNestLoopParam(), _copyNextValueExpr(), _copyNotifyStmt(), _copyNullIfExpr(), _copyNullTest(), _copyObjectWithArgs(), _copyOnConflictClause(), _copyOnConflictExpr(), _copyOpExpr(), _copyParam(), _copyParamRef(), _copyPartitionBoundSpec(), _copyPartitionCmd(), _copyPartitionedRelPruneInfo(), _copyPartitionElem(), _copyPartitionPruneInfo(), _copyPartitionPruneStepCombine(), _copyPartitionPruneStepOp(), _copyPartitionRangeDatum(), _copyPartitionSpec(), _copyPathKey(), _copyPlaceHolderInfo(), _copyPlaceHolderVar(), _copyPlan(), _copyPlanInvalItem(), _copyPlannedStmt(), _copyPlanRowMark(), _copyPrepareStmt(), _copyProjectSet(), _copyQuery(), _copyRangeFunction(), _copyRangeSubselect(), _copyRangeTableFunc(), _copyRangeTableFuncCol(), _copyRangeTableSample(), _copyRangeTblEntry(), _copyRangeTblFunction(), _copyRangeTblRef(), _copyRangeVar(), _copyRawStmt(), _copyReassignOwnedStmt(), _copyRecursiveUnion(), _copyRefreshMatViewStmt(), _copyReindexStmt(), _copyRelabelType(), _copyRenameStmt(), _copyReplicaIdentityStmt(), _copyResTarget(), _copyRestrictInfo(), _copyResult(), _copyRoleSpec(), _copyRowCompareExpr(), _copyRowExpr(), _copyRowMarkClause(), _copyRuleStmt(), _copySampleScan(), _copyScalarArrayOpExpr(), _copyScan(), _copySecLabelStmt(), _copySelectStmt(), _copySeqScan(), _copySetOp(), _copySetOperationStmt(), _copySetToDefault(), _copySort(), _copySortBy(), _copySortGroupClause(), _copySpecialJoinInfo(), _copySQLValueFunction(), _copySubLink(), _copySubPlan(), _copySubqueryScan(), _copySubscriptingRef(), _copyTableFunc(), _copyTableFuncScan(), _copyTableLikeClause(), _copyTableSampleClause(), _copyTargetEntry(), _copyTidScan(), _copyTransactionStmt(), _copyTriggerTransition(), _copyTruncateStmt(), _copyTypeCast(), _copyTypeName(), _copyUnique(), _copyUnlistenStmt(), _copyUpdateStmt(), _copyVacuumRelation(), _copyVacuumStmt(), _copyValue(), _copyValuesScan(), _copyVar(), _copyVariableSetStmt(), _copyVariableShowStmt(), _copyViewStmt(), _copyWindowAgg(), _copyWindowClause(), _copyWindowDef(), _copyWindowFunc(), _copyWithCheckOption(), _copyWithClause(), _copyWorkTableScan(), _copyXmlExpr(), _copyXmlSerialize(), add_eq_member(), add_with_check_options(), AddInvertedQual(), addRangeTableEntry(), addRangeTableEntryForCTE(), addRangeTableEntryForENR(), addRangeTableEntryForFunction(), addRangeTableEntryForJoin(), addRangeTableEntryForRelation(), addRangeTableEntryForSubquery(), addRangeTableEntryForTableFunc(), addRangeTableEntryForValues(), addRTEtoQuery(), addTargetToGroupList(), addTargetToSortList(), adjust_appendrel_attrs_mutator(), AlterTableMoveAll(), applyLockingClause(), assign_param_for_placeholdervar(), assign_param_for_var(), ATExecAddColumn(), ATExecDetachPartition(), ATPostAlterTypeParse(), ATPrepSetNotNull(), blhandler(), brinhandler(), bthandler(), build_child_join_rel(), build_child_join_sjinfo(), build_coercion_expression(), build_column_default(), build_join_rel(), build_minmax_path(), build_simple_rel(), build_subplan(), BuildIndexInfo(), buildMergedJoinVar(), CatalogOpenIndexes(), CheckIndexCompatible(), checkInsertTargets(), CloneFkReferenced(), CloneFkReferencing(), CloneRowTriggersToPartition(), coerce_record_to_complex(), coerce_to_domain(), coerce_to_target_type(), coerce_type(), commute_restrictinfo(), consider_groupingsets_paths(), convert_ANY_sublink_to_join(), convert_combining_aggrefs(), convert_EXISTS_sublink_to_join(), ConvertTriggerToFK(), copy_pathtarget(), CopyFrom(), copyObjectImpl(), create_agg_path(), create_append_path(), create_append_plan(), create_bitmap_and_path(), create_bitmap_heap_path(), create_bitmap_or_path(), create_ctas_internal(), create_ctescan_path(), create_empty_pathtarget(), create_estate_for_relation(), create_foreign_join_path(), create_foreign_upper_path(), create_foreignscan_path(), create_functionscan_path(), create_gather_merge_path(), create_gather_merge_plan(), create_gather_path(), create_group_path(), create_group_result_path(), create_groupingsets_path(), create_hashjoin_path(), create_index_path(), create_limit_path(), create_lockrows_path(), create_material_path(), create_merge_append_path(), create_merge_append_plan(), create_mergejoin_path(), create_minmaxagg_path(), create_modifytable_path(), create_namedtuplestorescan_path(), create_nestloop_path(), create_projection_path(), create_recursiveunion_path(), create_resultscan_path(), create_samplescan_path(), create_seqscan_path(), create_set_projection_path(), create_setop_path(), create_sort_path(), create_subqueryscan_path(), create_tablefuncscan_path(), create_tidscan_path(), create_toast_table(), create_unique_path(), create_unique_plan(), create_upper_unique_path(), create_valuesscan_path(), create_windowagg_path(), create_worktablescan_path(), CreateExecutorState(), CreateExprContext(), CreateExtensionInternal(), CreateFKCheckTrigger(), createForeignKeyActionTriggers(), CreateSchemaCommand(), CreateStandaloneExprContext(), DefineCompositeType(), DefineIndex(), DefineSequence(), DefineView(), DefineVirtualRelation(), deparse_context_for(), DoCopy(), domainAddConstraint(), eval_const_expressions_mutator(), evaluate_function(), ExecBuildAggTrans(), ExecBuildGroupingEqual(), ExecBuildProjectionInfo(), ExecGetTriggerResultRel(), ExecInitAgg(), ExecInitAlternativeSubPlan(), ExecInitAppend(), ExecInitBitmapAnd(), ExecInitBitmapHeapScan(), ExecInitBitmapIndexScan(), ExecInitBitmapOr(), ExecInitCteScan(), ExecInitExpr(), ExecInitExprRec(), ExecInitExprWithParams(), ExecInitForeignScan(), ExecInitFunctionResultSet(), ExecInitFunctionScan(), ExecInitGather(), ExecInitGatherMerge(), ExecInitGroup(), ExecInitHash(), ExecInitHashJoin(), ExecInitIndexOnlyScan(), ExecInitIndexScan(), ExecInitJunkFilter(), ExecInitJunkFilterConversion(), ExecInitLimit(), ExecInitLockRows(), ExecInitMaterial(), ExecInitMergeAppend(), ExecInitMergeJoin(), ExecInitModifyTable(), ExecInitNamedTuplestoreScan(), ExecInitNestLoop(), ExecInitPartitionInfo(), ExecInitProjectSet(), ExecInitQual(), ExecInitRecursiveUnion(), ExecInitResult(), ExecInitSampleScan(), ExecInitSeqScan(), ExecInitSetOp(), ExecInitSort(), ExecInitSubPlan(), ExecInitSubqueryScan(), ExecInitTableFuncScan(), ExecInitTableFunctionResult(), ExecInitTidScan(), ExecInitUnique(), ExecInitValuesScan(), ExecInitWindowAgg(), ExecInitWorkTableScan(), ExecSerializePlan(), ExecuteCallStmt(), ExecuteDoStmt(), expand_indexqual_rowcompare(), expand_single_inheritance_child(), ExpandRowReference(), fetch_upper_rel(), file_fdw_handler(), find_minmax_aggs_walker(), find_placeholder_info(), fixed_paramref_hook(), flatCopyTargetEntry(), flatten_join_alias_vars_mutator(), flatten_simple_union_all(), gen_prune_step_combine(), gen_prune_step_op(), generate_new_exec_param(), generateClonedExtStatsStmt(), generateClonedIndexStmt(), generateSerialExtraStmts(), get_appendrel_parampathinfo(), get_baserel_parampathinfo(), get_cast_hashentry(), get_eclass_for_sort_expr(), get_index_clause_from_support(), get_joinrel_parampathinfo(), get_qual_for_list(), get_range_nulltest(), get_relation_constraints(), get_relation_foreign_keys(), get_relation_info(), get_relation_statistics(), get_switched_clauses(), GetExistingLocalJoinPath(), ginhandler(), gisthandler(), hashhandler(), ImportForeignSchema(), index_constraint_create(), inheritance_planner(), init_execution_state(), inline_function(), intorel_startup(), load_domaintype_info(), make_agg(), make_agg_arg(), make_andclause(), make_append_rel_info(), make_bitmap_and(), make_bitmap_heapscan(), make_bitmap_indexscan(), make_bitmap_or(), make_canonical_pathkey(), make_ctescan(), make_datum_param(), make_foreignscan(), make_functionscan(), make_gather(), make_group(), make_hash(), make_hashjoin(), make_indexonlyscan(), make_indexscan(), make_limit(), make_lockrows(), make_material(), make_mergejoin(), make_modifytable(), make_namedtuplestorescan(), make_nestloop(), make_notclause(), make_nulltest_from_distinct(), make_op(), make_opclause(), make_orclause(), make_outerjoininfo(), make_partial_grouping_target(), make_partition_op_expr(), make_partition_pruneinfo(), make_partitionedrel_pruneinfo(), make_pathtarget_from_tlist(), make_placeholder_expr(), make_project_set(), make_recursive_union(), make_restrictinfo_internal(), make_result(), make_row_comparison_op(), make_samplescan(), make_scalar_array_op(), make_seqscan(), make_setop(), make_sort(), make_subplan(), make_subqueryscan(), make_tablefuncscan(), make_tidscan(), make_unique_from_pathkeys(), make_unique_from_sortclauses(), make_valuesscan(), make_windowagg(), make_worktablescan(), makeA_Expr(), makeAlias(), makeBitString(), makeBoolExpr(), makeColumnDef(), makeConst(), makeDefElem(), makeDefElemExtended(), makeFloat(), makeFromExpr(), makeFuncCall(), makeFuncExpr(), makeGroupingSet(), makeInteger(), makeRangeVar(), makeRelabelType(), makeSimpleA_Expr(), makeString(), makeTargetEntry(), makeTypeNameFromNameList(), makeTypeNameFromOid(), makeVacuumRelation(), makeVar(), map_variable_attnos_mutator(), match_boolean_index_clause(), match_clause_to_indexcol(), match_clause_to_ordering_op(), match_opclause_to_indexcol(), match_saopclause_to_indexcol(), MergeAttributes(), negate_clause(), NotNullImpliedByRelConstraints(), ParseComplexProjection(), ParseFuncOrColumn(), PartConstraintImpliedByRelConstraint(), pg_get_object_address(), pg_get_triggerdef_worker(), pg_plan_queries(), plan_cluster_use_sort(), plan_create_index_workers(), postgres_fdw_handler(), prep_domain_constraints(), PrepareQuery(), preprocess_grouping_sets(), preprocess_rowmarks(), process_equivalence(), process_matched_tle(), process_subquery_nestloop_params(), ProcessUtilitySlow(), pull_up_simple_subquery(), pull_up_simple_values(), pull_up_union_leaf_queries(), pullup_replace_vars_callback(), RebuildConstraintComment(), record_plan_function_dependency(), record_plan_type_dependency(), RelationGetFKeyList(), reorder_grouping_sets(), reparameterize_path(), reparameterize_path_by_child(), replace_empty_jointree(), replace_nestloop_param_placeholdervar(), replace_nestloop_param_var(), replace_nestloop_params_mutator(), replace_outer_agg(), replace_outer_grouping(), replace_outer_placeholdervar(), replace_outer_var(), ReplaceVarsFromTargetList_callback(), resolve_unique_index_expr(), rewriteTargetView(), RI_Initial_Check(), scalararraysel(), spghandler(), sql_fn_make_param(), SS_make_initplan_from_plan(), SS_process_ctes(), standard_planner(), subquery_planner(), tbm_create(), test_rls_hooks_permissive(), test_rls_hooks_restrictive(), transformAExprIn(), transformAExprOp(), transformAlterTableStmt(), transformArrayExpr(), transformAssignmentIndirection(), transformCallStmt(), transformCaseExpr(), transformCoalesceExpr(), transformCollateClause(), transformColumnDefinition(), transformContainerSubscripts(), transformCreateTableAsStmt(), transformCurrentOfExpr(), transformDeclareCursorStmt(), transformDeleteStmt(), transformExplainStmt(), transformFKConstraints(), transformFromClauseItem(), transformGroupingFunc(), transformIndexConstraint(), transformInsertStmt(), transformLockingClause(), transformMinMaxExpr(), transformMultiAssignRef(), transformOfType(), transformOnConflictClause(), transformOptionalSelectInto(), transformPartitionRangeBounds(), transformPartitionSpec(), transformRangeTableFunc(), transformRangeTableSample(), transformRowExpr(), transformRuleStmt(), transformSelectStmt(), transformSetOperationStmt(), transformSetOperationTree(), transformStmt(), transformSubLink(), transformTableLikeClause(), transformUpdateStmt(), transformValuesClause(), transformWindowDefinitions(), transformXmlExpr(), transformXmlSerialize(), tsm_bernoulli_handler(), tsm_system_handler(), tsm_system_rows_handler(), tsm_system_time_handler(), and variable_paramref_hook().

◆ newNode

#define newNode (   size,
  tag 
)
Value:
( \
AssertMacro((size) >= sizeof(Node)), /* need the tag, at least */ \
newNodeMacroHolder = (Node *) palloc0fast(size), \
newNodeMacroHolder->type = (tag), \
)
Definition: nodes.h:524
#define palloc0fast(sz)
Definition: palloc.h:91
PGDLLIMPORT Node * newNodeMacroHolder
Definition: nodes.c:31

Definition at line 562 of file nodes.h.

Referenced by _copyExtensibleNode(), and _readExtensibleNode().

◆ NodeSetTag

#define NodeSetTag (   nodeptr,
 
)    (((Node*)(nodeptr))->type = (t))

Definition at line 573 of file nodes.h.

Referenced by make_distinct_op(), and transformAExprNullIf().

◆ nodeTag

#define nodeTag (   nodeptr)    (((const Node*)(nodeptr))->type)

Definition at line 529 of file nodes.h.

Referenced by _outQuery(), add_base_rels_to_query(), add_vars_to_targetlist(), AlterDomainAddConstraint(), analyze_requires_snapshot(), assign_collations_walker(), ATPostAlterTypeParse(), bitmap_subplan_mark_shared(), btcostestimate(), build_joinrel_tlist(), build_subplan(), check_functions_in_node(), check_xact_readonly(), ChoosePortalStrategy(), contain_leaked_vars_walker(), copyObjectImpl(), cost_bitmap_tree_node(), cost_subplan(), create_bitmap_subplan(), CreateCommandTag(), deconstruct_recurse(), defGetBoolean(), defGetInt32(), defGetInt64(), defGetNumeric(), defGetQualifiedName(), defGetString(), defGetStringList(), defGetTypeLength(), defGetTypeName(), DefineDomain(), deparseExpr(), equal(), eval_const_expressions_mutator(), exec_save_simple_expr(), ExecEndNode(), ExecIndexBuildScanKeys(), ExecInitExprRec(), ExecInitFunctionResultSet(), ExecInitNode(), ExecInitSubPlan(), ExecInitWholeRowVar(), ExecMarkPos(), ExecParallelEstimate(), ExecParallelInitializeDSM(), ExecParallelInitializeWorker(), ExecParallelReInitializeDSM(), ExecParallelRetrieveInstrumentation(), ExecReScan(), ExecRestrPos(), ExecScanReScan(), ExecSetVariableStmt(), ExecShutdownNode(), ExecSupportsBackwardScan(), ExplainNode(), ExplainPreScanNode(), ExplainTargetRel(), exprCollation(), expression_tree_mutator(), expression_tree_walker(), exprInputCollation(), exprLocation(), exprSetCollation(), exprSetInputCollation(), exprType(), exprTypmod(), FigureColnameInternal(), finalize_plan(), find_indexpath_quals(), find_jointree_node_for_rel(), find_placeholders_recurse(), fix_indexqual_clause(), flatten_join_using_qual(), flatten_set_variable_args(), foreign_expr_walker(), generate_partitionwise_join_paths(), get_bitmap_tree_required_outer(), get_from_clause_item(), get_indexpath_pages(), get_matching_partitions(), get_relids_in_jointree(), get_rule_expr(), get_setop_query(), get_sublink_expr(), GetCommandLogLevel(), gincostestimate(), has_dangerous_join_using(), hide_coercion_node(), identify_join_columns(), ImportForeignSchema(), index_other_operands_eval_cost(), is_foreign_param(), is_projection_capable_plan(), is_simple_union_all_recurse(), isSimpleNode(), jointree_contains_lateral_outer_refs(), JumbleExpr(), looks_like_function(), make_const(), make_rel_from_joinlist(), markQueryForLocking(), markRTEForSelectPriv(), MultiExecProcNode(), NameListToString(), negate_clause(), oidparse(), outNode(), pg_get_partkeydef_worker(), planstate_tree_walker(), preprocess_qual_conditions(), ProcessUtilitySlow(), pull_up_sublinks_jointree_recurse(), pull_up_subqueries_recurse(), pull_up_union_leaf_queries(), RangeVarCallbackForAlterRelation(), raw_expression_tree_walker(), recurse_push_qual(), recurse_pushdown_safe(), recurse_set_operations(), reduce_outer_joins_pass1(), reduce_outer_joins_pass2(), remove_rel_from_joinlist(), remove_useless_results_recurse(), reparameterize_path_by_child(), replace_vars_in_jointree(), search_plan_tree(), sepgsql_utility_command(), set_plan_refs(), set_using_names(), standard_ProcessUtility(), transformAlterTableStmt(), transformConstraintAttrs(), transformCreateSchemaStmt(), transformCreateStmt(), transformExprRecurse(), transformFromClauseItem(), transformStmt(), UtilityContainsQuery(), UtilityReturnsTuples(), and UtilityTupleDescriptor().

Typedef Documentation

◆ AggSplit

◆ AggStrategy

◆ CmdType

◆ Cost

typedef double Cost

Definition at line 658 of file nodes.h.

◆ JoinType

◆ Node

typedef struct Node Node

◆ NodeTag

◆ OnConflictAction

◆ Selectivity

Definition at line 657 of file nodes.h.

◆ SetOpCmd

◆ SetOpStrategy

Enumeration Type Documentation

◆ AggSplit

enum AggSplit
Enumerator
AGGSPLIT_SIMPLE 
AGGSPLIT_INITIAL_SERIAL 
AGGSPLIT_FINAL_DESERIAL 

Definition at line 775 of file nodes.h.

776 {
777  /* Basic, non-split aggregation: */
778  AGGSPLIT_SIMPLE = 0,
779  /* Initial phase of partial aggregation, with serialization: */
781  /* Final phase of partial aggregation, with deserialization: */
783 } AggSplit;
#define AGGSPLITOP_DESERIALIZE
Definition: nodes.h:772
#define AGGSPLITOP_COMBINE
Definition: nodes.h:769
#define AGGSPLITOP_SERIALIZE
Definition: nodes.h:771
AggSplit
Definition: nodes.h:775
#define AGGSPLITOP_SKIPFINAL
Definition: nodes.h:770

◆ AggStrategy

Enumerator
AGG_PLAIN 
AGG_SORTED 
AGG_HASHED 
AGG_MIXED 

Definition at line 753 of file nodes.h.

754 {
755  AGG_PLAIN, /* simple agg across all input rows */
756  AGG_SORTED, /* grouped agg, input must be sorted */
757  AGG_HASHED, /* grouped agg, use internal hashtable */
758  AGG_MIXED /* grouped agg, hash and sort both used */
759 } AggStrategy;
AggStrategy
Definition: nodes.h:753

◆ CmdType

enum CmdType
Enumerator
CMD_UNKNOWN 
CMD_SELECT 
CMD_UPDATE 
CMD_INSERT 
CMD_DELETE 
CMD_UTILITY 
CMD_NOTHING 

Definition at line 667 of file nodes.h.

668 {
669  CMD_UNKNOWN,
670  CMD_SELECT, /* select stmt */
671  CMD_UPDATE, /* update stmt */
672  CMD_INSERT, /* insert stmt */
673  CMD_DELETE,
674  CMD_UTILITY, /* cmds like create, destroy, copy, vacuum,
675  * etc. */
676  CMD_NOTHING /* dummy command for instead nothing rules
677  * with qual */
678 } CmdType;
CmdType
Definition: nodes.h:667

◆ JoinType

enum JoinType
Enumerator
JOIN_INNER 
JOIN_LEFT 
JOIN_FULL 
JOIN_RIGHT 
JOIN_SEMI 
JOIN_ANTI 
JOIN_UNIQUE_OUTER 
JOIN_UNIQUE_INNER 

Definition at line 691 of file nodes.h.

692 {
693  /*
694  * The canonical kinds of joins according to the SQL JOIN syntax. Only
695  * these codes can appear in parser output (e.g., JoinExpr nodes).
696  */
697  JOIN_INNER, /* matching tuple pairs only */
698  JOIN_LEFT, /* pairs + unmatched LHS tuples */
699  JOIN_FULL, /* pairs + unmatched LHS + unmatched RHS */
700  JOIN_RIGHT, /* pairs + unmatched RHS tuples */
701 
702  /*
703  * Semijoins and anti-semijoins (as defined in relational theory) do not
704  * appear in the SQL JOIN syntax, but there are standard idioms for
705  * representing them (e.g., using EXISTS). The planner recognizes these
706  * cases and converts them to joins. So the planner and executor must
707  * support these codes. NOTE: in JOIN_SEMI output, it is unspecified
708  * which matching RHS row is joined to. In JOIN_ANTI output, the row is
709  * guaranteed to be null-extended.
710  */
711  JOIN_SEMI, /* 1 copy of each LHS row that has match(es) */
712  JOIN_ANTI, /* 1 copy of each LHS row that has no match */
713 
714  /*
715  * These codes are used internally in the planner, but are not supported
716  * by the executor (nor, indeed, by most of the planner).
717  */
718  JOIN_UNIQUE_OUTER, /* LHS path must be made unique */
719  JOIN_UNIQUE_INNER /* RHS path must be made unique */
720 
721  /*
722  * We might need additional join types someday.
723  */
724 } JoinType;
JoinType
Definition: nodes.h:691

◆ NodeTag

enum NodeTag
Enumerator
T_Invalid 
T_IndexInfo 
T_ExprContext 
T_ProjectionInfo 
T_JunkFilter 
T_OnConflictSetState 
T_ResultRelInfo 
T_EState 
T_TupleTableSlot 
T_Plan 
T_Result 
T_ProjectSet 
T_ModifyTable 
T_Append 
T_MergeAppend 
T_RecursiveUnion 
T_BitmapAnd 
T_BitmapOr 
T_Scan 
T_SeqScan 
T_SampleScan 
T_IndexScan 
T_IndexOnlyScan 
T_BitmapIndexScan 
T_BitmapHeapScan 
T_TidScan 
T_SubqueryScan 
T_FunctionScan 
T_ValuesScan 
T_TableFuncScan 
T_CteScan 
T_NamedTuplestoreScan 
T_WorkTableScan 
T_ForeignScan 
T_CustomScan 
T_Join 
T_NestLoop 
T_MergeJoin 
T_HashJoin 
T_Material 
T_Sort 
T_Group 
T_Agg 
T_WindowAgg 
T_Unique 
T_Gather 
T_GatherMerge 
T_Hash 
T_SetOp 
T_LockRows 
T_Limit 
T_NestLoopParam 
T_PlanRowMark 
T_PartitionPruneInfo 
T_PartitionedRelPruneInfo 
T_PartitionPruneStepOp 
T_PartitionPruneStepCombine 
T_PlanInvalItem 
T_PlanState 
T_ResultState 
T_ProjectSetState 
T_ModifyTableState 
T_AppendState 
T_MergeAppendState 
T_RecursiveUnionState 
T_BitmapAndState 
T_BitmapOrState 
T_ScanState 
T_SeqScanState 
T_SampleScanState 
T_IndexScanState 
T_IndexOnlyScanState 
T_BitmapIndexScanState 
T_BitmapHeapScanState 
T_TidScanState 
T_SubqueryScanState 
T_FunctionScanState 
T_TableFuncScanState 
T_ValuesScanState 
T_CteScanState 
T_NamedTuplestoreScanState 
T_WorkTableScanState 
T_ForeignScanState 
T_CustomScanState 
T_JoinState 
T_NestLoopState 
T_MergeJoinState 
T_HashJoinState 
T_MaterialState 
T_SortState 
T_GroupState 
T_AggState 
T_WindowAggState 
T_UniqueState 
T_GatherState 
T_GatherMergeState 
T_HashState 
T_SetOpState 
T_LockRowsState 
T_LimitState 
T_Alias 
T_RangeVar 
T_TableFunc 
T_Expr 
T_Var 
T_Const 
T_Param 
T_Aggref 
T_GroupingFunc 
T_WindowFunc 
T_SubscriptingRef 
T_FuncExpr 
T_NamedArgExpr 
T_OpExpr 
T_DistinctExpr 
T_NullIfExpr 
T_ScalarArrayOpExpr 
T_BoolExpr 
T_SubLink 
T_SubPlan 
T_AlternativeSubPlan 
T_FieldSelect 
T_FieldStore 
T_RelabelType 
T_CoerceViaIO 
T_ArrayCoerceExpr 
T_ConvertRowtypeExpr 
T_CollateExpr 
T_CaseExpr 
T_CaseWhen 
T_CaseTestExpr 
T_ArrayExpr 
T_RowExpr 
T_RowCompareExpr 
T_CoalesceExpr 
T_MinMaxExpr 
T_SQLValueFunction 
T_XmlExpr 
T_NullTest 
T_BooleanTest 
T_CoerceToDomain 
T_CoerceToDomainValue 
T_SetToDefault 
T_CurrentOfExpr 
T_NextValueExpr 
T_InferenceElem 
T_TargetEntry 
T_RangeTblRef 
T_JoinExpr 
T_FromExpr 
T_OnConflictExpr 
T_IntoClause 
T_ExprState 
T_AggrefExprState 
T_WindowFuncExprState 
T_SetExprState 
T_SubPlanState 
T_AlternativeSubPlanState 
T_DomainConstraintState 
T_PlannerInfo 
T_PlannerGlobal 
T_RelOptInfo 
T_IndexOptInfo 
T_ForeignKeyOptInfo 
T_ParamPathInfo 
T_Path 
T_IndexPath 
T_BitmapHeapPath 
T_BitmapAndPath 
T_BitmapOrPath 
T_TidPath 
T_SubqueryScanPath 
T_ForeignPath 
T_CustomPath 
T_NestPath 
T_MergePath 
T_HashPath 
T_AppendPath 
T_MergeAppendPath 
T_GroupResultPath 
T_MaterialPath 
T_UniquePath 
T_GatherPath 
T_GatherMergePath 
T_ProjectionPath 
T_ProjectSetPath 
T_SortPath 
T_GroupPath 
T_UpperUniquePath 
T_AggPath 
T_GroupingSetsPath 
T_MinMaxAggPath 
T_WindowAggPath 
T_SetOpPath 
T_RecursiveUnionPath 
T_LockRowsPath 
T_ModifyTablePath 
T_LimitPath 
T_EquivalenceClass 
T_EquivalenceMember 
T_PathKey 
T_PathTarget 
T_RestrictInfo 
T_IndexClause 
T_PlaceHolderVar 
T_SpecialJoinInfo 
T_AppendRelInfo 
T_PlaceHolderInfo 
T_MinMaxAggInfo 
T_PlannerParamItem 
T_RollupData 
T_GroupingSetData 
T_StatisticExtInfo 
T_MemoryContext 
T_AllocSetContext 
T_SlabContext 
T_GenerationContext 
T_Value 
T_Integer 
T_Float 
T_String 
T_BitString 
T_Null 
T_List 
T_IntList 
T_OidList 
T_ExtensibleNode 
T_RawStmt 
T_Query 
T_PlannedStmt 
T_InsertStmt 
T_DeleteStmt 
T_UpdateStmt 
T_SelectStmt 
T_AlterTableStmt 
T_AlterTableCmd 
T_AlterDomainStmt 
T_SetOperationStmt 
T_GrantStmt 
T_GrantRoleStmt 
T_AlterDefaultPrivilegesStmt 
T_ClosePortalStmt 
T_ClusterStmt 
T_CopyStmt 
T_CreateStmt 
T_DefineStmt 
T_DropStmt 
T_TruncateStmt 
T_CommentStmt 
T_FetchStmt 
T_IndexStmt 
T_CreateFunctionStmt 
T_AlterFunctionStmt 
T_DoStmt 
T_RenameStmt 
T_RuleStmt 
T_NotifyStmt 
T_ListenStmt 
T_UnlistenStmt 
T_TransactionStmt 
T_ViewStmt 
T_LoadStmt 
T_CreateDomainStmt 
T_CreatedbStmt 
T_DropdbStmt 
T_VacuumStmt 
T_ExplainStmt 
T_CreateTableAsStmt 
T_CreateSeqStmt 
T_AlterSeqStmt 
T_VariableSetStmt 
T_VariableShowStmt 
T_DiscardStmt 
T_CreateTrigStmt 
T_CreatePLangStmt 
T_CreateRoleStmt 
T_AlterRoleStmt 
T_DropRoleStmt 
T_LockStmt 
T_ConstraintsSetStmt 
T_ReindexStmt 
T_CheckPointStmt 
T_CreateSchemaStmt 
T_AlterDatabaseStmt 
T_AlterDatabaseSetStmt 
T_AlterRoleSetStmt 
T_CreateConversionStmt 
T_CreateCastStmt 
T_CreateOpClassStmt 
T_CreateOpFamilyStmt 
T_AlterOpFamilyStmt 
T_PrepareStmt 
T_ExecuteStmt 
T_DeallocateStmt 
T_DeclareCursorStmt 
T_CreateTableSpaceStmt 
T_DropTableSpaceStmt 
T_AlterObjectDependsStmt 
T_AlterObjectSchemaStmt 
T_AlterOwnerStmt 
T_AlterOperatorStmt 
T_DropOwnedStmt 
T_ReassignOwnedStmt 
T_CompositeTypeStmt 
T_CreateEnumStmt 
T_CreateRangeStmt 
T_AlterEnumStmt 
T_AlterTSDictionaryStmt 
T_AlterTSConfigurationStmt 
T_CreateFdwStmt 
T_AlterFdwStmt 
T_CreateForeignServerStmt 
T_AlterForeignServerStmt 
T_CreateUserMappingStmt 
T_AlterUserMappingStmt 
T_DropUserMappingStmt 
T_AlterTableSpaceOptionsStmt 
T_AlterTableMoveAllStmt 
T_SecLabelStmt 
T_CreateForeignTableStmt 
T_ImportForeignSchemaStmt 
T_CreateExtensionStmt 
T_AlterExtensionStmt 
T_AlterExtensionContentsStmt 
T_CreateEventTrigStmt 
T_AlterEventTrigStmt 
T_RefreshMatViewStmt 
T_ReplicaIdentityStmt 
T_AlterSystemStmt 
T_CreatePolicyStmt 
T_AlterPolicyStmt 
T_CreateTransformStmt 
T_CreateAmStmt 
T_CreatePublicationStmt 
T_AlterPublicationStmt 
T_CreateSubscriptionStmt 
T_AlterSubscriptionStmt 
T_DropSubscriptionStmt 
T_CreateStatsStmt 
T_AlterCollationStmt 
T_CallStmt 
T_A_Expr 
T_ColumnRef 
T_ParamRef 
T_A_Const 
T_FuncCall 
T_A_Star 
T_A_Indices 
T_A_Indirection 
T_A_ArrayExpr 
T_ResTarget 
T_MultiAssignRef 
T_TypeCast 
T_CollateClause 
T_SortBy 
T_WindowDef 
T_RangeSubselect 
T_RangeFunction 
T_RangeTableSample 
T_RangeTableFunc 
T_RangeTableFuncCol 
T_TypeName 
T_ColumnDef 
T_IndexElem 
T_Constraint 
T_DefElem 
T_RangeTblEntry 
T_RangeTblFunction 
T_TableSampleClause 
T_WithCheckOption 
T_SortGroupClause 
T_GroupingSet 
T_WindowClause 
T_ObjectWithArgs 
T_AccessPriv 
T_CreateOpClassItem 
T_TableLikeClause 
T_FunctionParameter 
T_LockingClause 
T_RowMarkClause 
T_XmlSerialize 
T_WithClause 
T_InferClause 
T_OnConflictClause 
T_CommonTableExpr 
T_RoleSpec 
T_TriggerTransition 
T_PartitionElem 
T_PartitionSpec 
T_PartitionBoundSpec 
T_PartitionRangeDatum 
T_PartitionCmd 
T_VacuumRelation 
T_IdentifySystemCmd 
T_BaseBackupCmd 
T_CreateReplicationSlotCmd 
T_DropReplicationSlotCmd 
T_StartReplicationCmd 
T_TimeLineHistoryCmd 
T_SQLCmd 
T_TriggerData 
T_EventTriggerData 
T_ReturnSetInfo 
T_WindowObjectData 
T_TIDBitmap 
T_InlineCodeBlock 
T_FdwRoutine 
T_IndexAmRoutine 
T_TableAmRoutine 
T_TsmRoutine 
T_ForeignKeyCacheInfo 
T_CallContext 
T_SupportRequestSimplify 
T_SupportRequestSelectivity 
T_SupportRequestCost 
T_SupportRequestRows 
T_SupportRequestIndexCondition 

Definition at line 26 of file nodes.h.

27 {
28  T_Invalid = 0,
29 
30  /*
31  * TAGS FOR EXECUTOR NODES (execnodes.h)
32  */
39  T_EState,
41 
42  /*
43  * TAGS FOR PLAN NODES (plannodes.h)
44  */
45  T_Plan,
46  T_Result,
49  T_Append,
53  T_BitmapOr,
54  T_Scan,
55  T_SeqScan,
61  T_TidScan,
66  T_CteScan,
71  T_Join,
72  T_NestLoop,
74  T_HashJoin,
75  T_Material,
76  T_Sort,
77  T_Group,
78  T_Agg,
80  T_Unique,
81  T_Gather,
83  T_Hash,
84  T_SetOp,
85  T_LockRows,
86  T_Limit,
87  /* these aren't subclasses of Plan: */
95 
96  /*
97  * TAGS FOR PLAN STATE NODES (execnodes.h)
98  *
99  * These should correspond one-to-one with Plan node types.
100  */
101  T_PlanState,
110  T_ScanState,
127  T_JoinState,
132  T_SortState,
133  T_GroupState,
134  T_AggState,
139  T_HashState,
140  T_SetOpState,
142  T_LimitState,
143 
144  /*
145  * TAGS FOR PRIMITIVE NODES (primnodes.h)
146  */
147  T_Alias,
148  T_RangeVar,
149  T_TableFunc,
150  T_Expr,
151  T_Var,
152  T_Const,
153  T_Param,
154  T_Aggref,
156  T_WindowFunc,
158  T_FuncExpr,
160  T_OpExpr,
162  T_NullIfExpr,
164  T_BoolExpr,
165  T_SubLink,
166  T_SubPlan,
169  T_FieldStore,
175  T_CaseExpr,
176  T_CaseWhen,
178  T_ArrayExpr,
179  T_RowExpr,
182  T_MinMaxExpr,
184  T_XmlExpr,
185  T_NullTest,
195  T_JoinExpr,
196  T_FromExpr,
198  T_IntoClause,
199 
200  /*
201  * TAGS FOR EXPRESSION STATE NODES (execnodes.h)
202  *
203  * ExprState represents the evaluation state for a whole expression tree.
204  * Most Expr-based plan nodes do not have a corresponding expression state
205  * node, they're fully handled within execExpr* - but sometimes the state
206  * needs to be shared with other parts of the executor, as for example
207  * with AggrefExprState, which nodeAgg.c has to modify.
208  */
209  T_ExprState,
216 
217  /*
218  * TAGS FOR PLANNER NODES (pathnodes.h)
219  */
222  T_RelOptInfo,
226  T_Path,
227  T_IndexPath,
231  T_TidPath,
234  T_CustomPath,
235  T_NestPath,
236  T_MergePath,
237  T_HashPath,
238  T_AppendPath,
242  T_UniquePath,
243  T_GatherPath,
247  T_SortPath,
248  T_GroupPath,
250  T_AggPath,
254  T_SetOpPath,
258  T_LimitPath,
259  /* these aren't subclasses of Path: */
262  T_PathKey,
263  T_PathTarget,
272  T_RollupData,
275 
276  /*
277  * TAGS FOR MEMORY NODES (memnodes.h)
278  */
283 
284  /*
285  * TAGS FOR VALUE NODES (value.h)
286  */
287  T_Value,
288  T_Integer,
289  T_Float,
290  T_String,
291  T_BitString,
292  T_Null,
293 
294  /*
295  * TAGS FOR LIST NODES (pg_list.h)
296  */
297  T_List,
298  T_IntList,
299  T_OidList,
300 
301  /*
302  * TAGS FOR EXTENSIBLE NODES (extensible.h)
303  */
305 
306  /*
307  * TAGS FOR STATEMENT NODES (mostly in parsenodes.h)
308  */
309  T_RawStmt,
310  T_Query,
312  T_InsertStmt,
313  T_DeleteStmt,
314  T_UpdateStmt,
315  T_SelectStmt,
320  T_GrantStmt,
325  T_CopyStmt,
326  T_CreateStmt,
327  T_DefineStmt,
328  T_DropStmt,
331  T_FetchStmt,
332  T_IndexStmt,
335  T_DoStmt,
336  T_RenameStmt,
337  T_RuleStmt,
338  T_NotifyStmt,
339  T_ListenStmt,
342  T_ViewStmt,
343  T_LoadStmt,
346  T_DropdbStmt,
347  T_VacuumStmt,
360  T_LockStmt,
422  T_CallStmt,
423 
424  /*
425  * TAGS FOR PARSE TREE NODES (parsenodes.h)
426  */
427  T_A_Expr,
428  T_ColumnRef,
429  T_ParamRef,
430  T_A_Const,
431  T_FuncCall,
432  T_A_Star,
433  T_A_Indices,
436  T_ResTarget,
438  T_TypeCast,
440  T_SortBy,
441  T_WindowDef,
447  T_TypeName,
448  T_ColumnDef,
449  T_IndexElem,
450  T_Constraint,
451  T_DefElem,
460  T_AccessPriv,
467  T_WithClause,
471  T_RoleSpec,
479 
480  /*
481  * TAGS FOR REPLICATION GRAMMAR PARSE NODES (replnodes.h)
482  */
489  T_SQLCmd,
490 
491  /*
492  * TAGS FOR RANDOM OTHER STUFF
493  *
494  * These are objects that aren't part of parse/plan/execute node tree
495  * structures, but we give them NodeTags anyway for identification
496  * purposes (usually because they are involved in APIs where we want to
497  * pass multiple object types through the same pointer).
498  */
499  T_TriggerData, /* in commands/trigger.h */
500  T_EventTriggerData, /* in commands/event_trigger.h */
501  T_ReturnSetInfo, /* in nodes/execnodes.h */
502  T_WindowObjectData, /* private in nodeWindowAgg.c */
503  T_TIDBitmap, /* in nodes/tidbitmap.h */
504  T_InlineCodeBlock, /* in nodes/parsenodes.h */
505  T_FdwRoutine, /* in foreign/fdwapi.h */
506  T_IndexAmRoutine, /* in access/amapi.h */
507  T_TableAmRoutine, /* in access/tableam.h */
508  T_TsmRoutine, /* in access/tsmapi.h */
509  T_ForeignKeyCacheInfo, /* in utils/rel.h */
510  T_CallContext, /* in nodes/parsenodes.h */
511  T_SupportRequestSimplify, /* in nodes/supportnodes.h */
512  T_SupportRequestSelectivity, /* in nodes/supportnodes.h */
513  T_SupportRequestCost, /* in nodes/supportnodes.h */
514  T_SupportRequestRows, /* in nodes/supportnodes.h */
515  T_SupportRequestIndexCondition /* in nodes/supportnodes.h */
516 } NodeTag;
Definition: nodes.h:78
Definition: nodes.h:80
Definition: nodes.h:54
Definition: nodes.h:49
Definition: nodes.h:76
NodeTag
Definition: nodes.h:26
Definition: nodes.h:46
Definition: nodes.h:150
Definition: nodes.h:77
Definition: nodes.h:147
Definition: nodes.h:297
Definition: nodes.h:152
Definition: nodes.h:151
Definition: nodes.h:310
Definition: nodes.h:83
Definition: nodes.h:287
Definition: nodes.h:45
Definition: nodes.h:71
Definition: nodes.h:292
Definition: nodes.h:84
Definition: nodes.h:289
Definition: nodes.h:81
Definition: nodes.h:226
Definition: nodes.h:39
Definition: nodes.h:153
Definition: nodes.h:86

◆ OnConflictAction

Enumerator
ONCONFLICT_NONE 
ONCONFLICT_NOTHING 
ONCONFLICT_UPDATE 

Definition at line 817 of file nodes.h.

818 {
819  ONCONFLICT_NONE, /* No "ON CONFLICT" clause */
820  ONCONFLICT_NOTHING, /* ON CONFLICT ... DO NOTHING */
821  ONCONFLICT_UPDATE /* ON CONFLICT ... DO UPDATE */
OnConflictAction
Definition: nodes.h:817

◆ SetOpCmd

enum SetOpCmd
Enumerator
SETOPCMD_INTERSECT 
SETOPCMD_INTERSECT_ALL 
SETOPCMD_EXCEPT 
SETOPCMD_EXCEPT_ALL 

Definition at line 797 of file nodes.h.

◆ SetOpStrategy

Enumerator
SETOP_SORTED 
SETOP_HASHED 

Definition at line 805 of file nodes.h.

806 {
807  SETOP_SORTED, /* input must be sorted */
808  SETOP_HASHED /* use internal hashtable */
809 } SetOpStrategy;
SetOpStrategy
Definition: nodes.h:805

Function Documentation

◆ bmsToString()

char* bmsToString ( const struct Bitmapset bms)

◆ copyObjectImpl()

void* copyObjectImpl ( const void *  obj)

Definition at line 4741 of file copyfuncs.c.

References _copyA_ArrayExpr(), _copyA_Indirection(), _copyAccessPriv(), _copyAConst(), _copyAExpr(), _copyAgg(), _copyAggref(), _copyAIndices(), _copyAlias(), _copyAlterCollationStmt(), _copyAlterDatabaseSetStmt(), _copyAlterDatabaseStmt(), _copyAlterDefaultPrivilegesStmt(), _copyAlterDomainStmt(), _copyAlterEnumStmt(), _copyAlterEventTrigStmt(), _copyAlterExtensionContentsStmt(), _copyAlterExtensionStmt(), _copyAlterFdwStmt(), _copyAlterForeignServerStmt(), _copyAlterFunctionStmt(), _copyAlternativeSubPlan(), _copyAlterObjectDependsStmt(), _copyAlterObjectSchemaStmt(), _copyAlterOperatorStmt(), _copyAlterOpFamilyStmt(), _copyAlterOwnerStmt(), _copyAlterPolicyStmt(), _copyAlterPublicationStmt(), _copyAlterRoleSetStmt(), _copyAlterRoleStmt(), _copyAlterSeqStmt(), _copyAlterSubscriptionStmt(), _copyAlterSystemStmt(), _copyAlterTableCmd(), _copyAlterTableMoveAllStmt(), _copyAlterTableSpaceOptionsStmt(), _copyAlterTableStmt(), _copyAlterTSConfigurationStmt(), _copyAlterTSDictionaryStmt(), _copyAlterUserMappingStmt(), _copyAppend(), _copyAppendRelInfo(), _copyArrayCoerceExpr(), _copyArrayExpr(), _copyAStar(), _copyBitmapAnd(), _copyBitmapHeapScan(), _copyBitmapIndexScan(), _copyBitmapOr(), _copyBooleanTest(), _copyBoolExpr(), _copyCallStmt(), _copyCaseExpr(), _copyCaseTestExpr(), _copyCaseWhen(), _copyClosePortalStmt(), _copyClusterStmt(), _copyCoalesceExpr(), _copyCoerceToDomain(), _copyCoerceToDomainValue(), _copyCoerceViaIO(), _copyCollateClause(), _copyCollateExpr(), _copyColumnDef(), _copyColumnRef(), _copyCommentStmt(), _copyCommonTableExpr(), _copyCompositeTypeStmt(), _copyConst(), _copyConstraint(), _copyConstraintsSetStmt(), _copyConvertRowtypeExpr(), _copyCopyStmt(), _copyCreateAmStmt(), _copyCreateCastStmt(), _copyCreateConversionStmt(), _copyCreatedbStmt(), _copyCreateDomainStmt(), _copyCreateEnumStmt(), _copyCreateEventTrigStmt(), _copyCreateExtensionStmt(), _copyCreateFdwStmt(), _copyCreateForeignServerStmt(), _copyCreateForeignTableStmt(), _copyCreateFunctionStmt(), _copyCreateOpClassItem(), _copyCreateOpClassStmt(), _copyCreateOpFamilyStmt(), _copyCreatePLangStmt(), _copyCreatePolicyStmt(), _copyCreatePublicationStmt(), _copyCreateRangeStmt(), _copyCreateRoleStmt(), _copyCreateSchemaStmt(), _copyCreateSeqStmt(), _copyCreateStatsStmt(), _copyCreateStmt(), _copyCreateSubscriptionStmt(), _copyCreateTableAsStmt(), _copyCreateTableSpaceStmt(), _copyCreateTransformStmt(), _copyCreateTrigStmt(), _copyCreateUserMappingStmt(), _copyCteScan(), _copyCurrentOfExpr(), _copyCustomScan(), _copyDeallocateStmt(), _copyDeclareCursorStmt(), _copyDefElem(), _copyDefineStmt(), _copyDeleteStmt(), _copyDiscardStmt(), _copyDistinctExpr(), _copyDoStmt(), _copyDropdbStmt(), _copyDropOwnedStmt(), _copyDropRoleStmt(), _copyDropStmt(), _copyDropSubscriptionStmt(), _copyDropTableSpaceStmt(), _copyDropUserMappingStmt(), _copyExecuteStmt(), _copyExplainStmt(), _copyExtensibleNode(), _copyFetchStmt(), _copyFieldSelect(), _copyFieldStore(), _copyForeignKeyCacheInfo(), _copyForeignScan(), _copyFromExpr(), _copyFuncCall(), _copyFuncExpr(), _copyFunctionParameter(), _copyFunctionScan(), _copyGather(), _copyGatherMerge(), _copyGrantRoleStmt(), _copyGrantStmt(), _copyGroup(), _copyGroupingFunc(), _copyGroupingSet(), _copyHash(), _copyHashJoin(), _copyImportForeignSchemaStmt(), _copyIndexElem(), _copyIndexOnlyScan(), _copyIndexScan(), _copyIndexStmt(), _copyInferClause(), _copyInferenceElem(), _copyInsertStmt(), _copyIntoClause(), _copyJoin(), _copyJoinExpr(), _copyLimit(), _copyListenStmt(), _copyLoadStmt(), _copyLockingClause(), _copyLockRows(), _copyLockStmt(), _copyMaterial(), _copyMergeAppend(), _copyMergeJoin(), _copyMinMaxExpr(), _copyModifyTable(), _copyMultiAssignRef(), _copyNamedArgExpr(), _copyNamedTuplestoreScan(), _copyNestLoop(), _copyNestLoopParam(), _copyNextValueExpr(), _copyNotifyStmt(), _copyNullIfExpr(), _copyNullTest(), _copyObjectWithArgs(), _copyOnConflictClause(), _copyOnConflictExpr(), _copyOpExpr(), _copyParam(), _copyParamRef(), _copyPartitionBoundSpec(), _copyPartitionCmd(), _copyPartitionedRelPruneInfo(), _copyPartitionElem(), _copyPartitionPruneInfo(), _copyPartitionPruneStepCombine(), _copyPartitionPruneStepOp(), _copyPartitionRangeDatum(), _copyPartitionSpec(), _copyPathKey(), _copyPlaceHolderInfo(), _copyPlaceHolderVar(), _copyPlan(), _copyPlanInvalItem(), _copyPlannedStmt(), _copyPlanRowMark(), _copyPrepareStmt(), _copyProjectSet(), _copyQuery(), _copyRangeFunction(), _copyRangeSubselect(), _copyRangeTableFunc(), _copyRangeTableFuncCol(), _copyRangeTableSample(), _copyRangeTblEntry(), _copyRangeTblFunction(), _copyRangeTblRef(), _copyRangeVar(), _copyRawStmt(), _copyReassignOwnedStmt(), _copyRecursiveUnion(), _copyRefreshMatViewStmt(), _copyReindexStmt(), _copyRelabelType(), _copyRenameStmt(), _copyReplicaIdentityStmt(), _copyResTarget(), _copyRestrictInfo(), _copyResult(), _copyRoleSpec(), _copyRowCompareExpr(), _copyRowExpr(), _copyRowMarkClause(), _copyRuleStmt(), _copySampleScan(), _copyScalarArrayOpExpr(), _copyScan(), _copySecLabelStmt(), _copySelectStmt(), _copySeqScan(), _copySetOp(), _copySetOperationStmt(), _copySetToDefault(), _copySort(), _copySortBy(), _copySortGroupClause(), _copySpecialJoinInfo(), _copySQLValueFunction(), _copySubLink(), _copySubPlan(), _copySubqueryScan(), _copySubscriptingRef(), _copyTableFunc(), _copyTableFuncScan(), _copyTableLikeClause(), _copyTableSampleClause(), _copyTargetEntry(), _copyTidScan(), _copyTransactionStmt(), _copyTriggerTransition(), _copyTruncateStmt(), _copyTypeCast(), _copyTypeName(), _copyUnique(), _copyUnlistenStmt(), _copyUpdateStmt(), _copyVacuumRelation(), _copyVacuumStmt(), _copyValue(), _copyValuesScan(), _copyVar(), _copyVariableSetStmt(), _copyVariableShowStmt(), _copyViewStmt(), _copyWindowAgg(), _copyWindowClause(), _copyWindowDef(), _copyWindowFunc(), _copyWithCheckOption(), _copyWithClause(), _copyWorkTableScan(), _copyXmlExpr(), _copyXmlSerialize(), check_stack_depth(), elog, ERROR, list_copy(), list_copy_deep(), makeNode, nodeTag, T_A_ArrayExpr, T_A_Const, T_A_Expr, T_A_Indices, T_A_Indirection, T_A_Star, T_AccessPriv, T_Agg, T_Aggref, T_Alias, T_AlterCollationStmt, T_AlterDatabaseSetStmt, T_AlterDatabaseStmt, T_AlterDefaultPrivilegesStmt, T_AlterDomainStmt, T_AlterEnumStmt, T_AlterEventTrigStmt, T_AlterExtensionContentsStmt, T_AlterExtensionStmt, T_AlterFdwStmt, T_AlterForeignServerStmt, T_AlterFunctionStmt, T_AlternativeSubPlan, T_AlterObjectDependsStmt, T_AlterObjectSchemaStmt, T_AlterOperatorStmt, T_AlterOpFamilyStmt, T_AlterOwnerStmt, T_AlterPolicyStmt, T_AlterPublicationStmt, T_AlterRoleSetStmt, T_AlterRoleStmt, T_AlterSeqStmt, T_AlterSubscriptionStmt, T_AlterSystemStmt, T_AlterTableCmd, T_AlterTableMoveAllStmt, T_AlterTableSpaceOptionsStmt, T_AlterTableStmt, T_AlterTSConfigurationStmt, T_AlterTSDictionaryStmt, T_AlterUserMappingStmt, T_Append, T_AppendRelInfo, T_ArrayCoerceExpr, T_ArrayExpr, T_BitmapAnd, T_BitmapHeapScan, T_BitmapIndexScan, T_BitmapOr, T_BitString, T_BooleanTest, T_BoolExpr, T_CallStmt, T_CaseExpr, T_CaseTestExpr, T_CaseWhen, T_CheckPointStmt, T_ClosePortalStmt, T_ClusterStmt, T_CoalesceExpr, T_CoerceToDomain, T_CoerceToDomainValue, T_CoerceViaIO, T_CollateClause, T_CollateExpr, T_ColumnDef, T_ColumnRef, T_CommentStmt, T_CommonTableExpr, T_CompositeTypeStmt, T_Const, T_Constraint, T_ConstraintsSetStmt, T_ConvertRowtypeExpr, T_CopyStmt, T_CreateAmStmt, T_CreateCastStmt, T_CreateConversionStmt, T_CreatedbStmt, T_CreateDomainStmt, T_CreateEnumStmt, T_CreateEventTrigStmt, T_CreateExtensionStmt, T_CreateFdwStmt, T_CreateForeignServerStmt, T_CreateForeignTableStmt, T_CreateFunctionStmt, T_CreateOpClassItem, T_CreateOpClassStmt, T_CreateOpFamilyStmt, T_CreatePLangStmt, T_CreatePolicyStmt, T_CreatePublicationStmt, T_CreateRangeStmt, T_CreateRoleStmt, T_CreateSchemaStmt, T_CreateSeqStmt, T_CreateStatsStmt, T_CreateStmt, T_CreateSubscriptionStmt, T_CreateTableAsStmt, T_CreateTableSpaceStmt, T_CreateTransformStmt, T_CreateTrigStmt, T_CreateUserMappingStmt, T_CteScan, T_CurrentOfExpr, T_CustomScan, T_DeallocateStmt, T_DeclareCursorStmt, T_DefElem, T_DefineStmt, T_DeleteStmt, T_DiscardStmt, T_DistinctExpr, T_DoStmt, T_DropdbStmt, T_DropOwnedStmt, T_DropRoleStmt, T_DropStmt, T_DropSubscriptionStmt, T_DropTableSpaceStmt, T_DropUserMappingStmt, T_ExecuteStmt, T_ExplainStmt, T_ExtensibleNode, T_FetchStmt, T_FieldSelect, T_FieldStore, T_Float, T_ForeignKeyCacheInfo, T_ForeignScan, T_FromExpr, T_FuncCall, T_FuncExpr, T_FunctionParameter, T_FunctionScan, T_Gather, T_GatherMerge, T_GrantRoleStmt, T_GrantStmt, T_Group, T_GroupingFunc, T_GroupingSet, T_Hash, T_HashJoin, T_ImportForeignSchemaStmt, T_IndexElem, T_IndexOnlyScan, T_IndexScan, T_IndexStmt, T_InferClause, T_InferenceElem, T_InsertStmt, T_Integer, T_IntList, T_IntoClause, T_Join, T_JoinExpr, T_Limit, T_List, T_ListenStmt, T_LoadStmt, T_LockingClause, T_LockRows, T_LockStmt, T_Material, T_MergeAppend, T_MergeJoin, T_MinMaxExpr, T_ModifyTable, T_MultiAssignRef, T_NamedArgExpr, T_NamedTuplestoreScan, T_NestLoop, T_NestLoopParam, T_NextValueExpr, T_NotifyStmt, T_Null, T_NullIfExpr, T_NullTest, T_ObjectWithArgs, T_OidList, T_OnConflictClause, T_OnConflictExpr, T_OpExpr, T_Param, T_ParamRef, T_PartitionBoundSpec, T_PartitionCmd, T_PartitionedRelPruneInfo, T_PartitionElem, T_PartitionPruneInfo, T_PartitionPruneStepCombine, T_PartitionPruneStepOp, T_PartitionRangeDatum, T_PartitionSpec, T_PathKey, T_PlaceHolderInfo, T_PlaceHolderVar, T_Plan, T_PlanInvalItem, T_PlannedStmt, T_PlanRowMark, T_PrepareStmt, T_ProjectSet, T_Query, T_RangeFunction, T_RangeSubselect, T_RangeTableFunc, T_RangeTableFuncCol, T_RangeTableSample, T_RangeTblEntry, T_RangeTblFunction, T_RangeTblRef, T_RangeVar, T_RawStmt, T_ReassignOwnedStmt, T_RecursiveUnion, T_RefreshMatViewStmt, T_ReindexStmt, T_RelabelType, T_RenameStmt, T_ReplicaIdentityStmt, T_ResTarget, T_RestrictInfo, T_Result, T_RoleSpec, T_RowCompareExpr, T_RowExpr, T_RowMarkClause, T_RuleStmt, T_SampleScan, T_ScalarArrayOpExpr, T_Scan, T_SecLabelStmt, T_SelectStmt, T_SeqScan, T_SetOp, T_SetOperationStmt, T_SetToDefault, T_Sort, T_SortBy, T_SortGroupClause, T_SpecialJoinInfo, T_SQLValueFunction, T_String, T_SubLink, T_SubPlan, T_SubqueryScan, T_SubscriptingRef, T_TableFunc, T_TableFuncScan, T_TableLikeClause, T_TableSampleClause, T_TargetEntry, T_TidScan, T_TransactionStmt, T_TriggerTransition, T_TruncateStmt, T_TypeCast, T_TypeName, T_Unique, T_UnlistenStmt, T_UpdateStmt, T_VacuumRelation, T_VacuumStmt, T_ValuesScan, T_Var, T_VariableSetStmt, T_VariableShowStmt, T_ViewStmt, T_WindowAgg, T_WindowClause, T_WindowDef, T_WindowFunc, T_WithCheckOption, T_WithClause, T_WorkTableScan, T_XmlExpr, and T_XmlSerialize.

Referenced by list_copy_deep().

4742 {
4743  void *retval;
4744 
4745  if (from == NULL)
4746  return NULL;
4747 
4748  /* Guard against stack overflow due to overly complex expressions */
4750 
4751  switch (nodeTag(from))
4752  {
4753  /*
4754  * PLAN NODES
4755  */
4756  case T_PlannedStmt:
4757  retval = _copyPlannedStmt(from);
4758  break;
4759  case T_Plan:
4760  retval = _copyPlan(from);
4761  break;
4762  case T_Result:
4763  retval = _copyResult(from);
4764  break;
4765  case T_ProjectSet:
4766  retval = _copyProjectSet(from);
4767  break;
4768  case T_ModifyTable:
4769  retval = _copyModifyTable(from);
4770  break;
4771  case T_Append:
4772  retval = _copyAppend(from);
4773  break;
4774  case T_MergeAppend:
4775  retval = _copyMergeAppend(from);
4776  break;
4777  case T_RecursiveUnion:
4778  retval = _copyRecursiveUnion(from);
4779  break;
4780  case T_BitmapAnd:
4781  retval = _copyBitmapAnd(from);
4782  break;
4783  case T_BitmapOr:
4784  retval = _copyBitmapOr(from);
4785  break;
4786  case T_Scan:
4787  retval = _copyScan(from);
4788  break;
4789  case T_Gather:
4790  retval = _copyGather(from);
4791  break;
4792  case T_GatherMerge:
4793  retval = _copyGatherMerge(from);
4794  break;
4795  case T_SeqScan:
4796  retval = _copySeqScan(from);
4797  break;
4798  case T_SampleScan:
4799  retval = _copySampleScan(from);
4800  break;
4801  case T_IndexScan:
4802  retval = _copyIndexScan(from);
4803  break;
4804  case T_IndexOnlyScan:
4805  retval = _copyIndexOnlyScan(from);
4806  break;
4807  case T_BitmapIndexScan:
4808  retval = _copyBitmapIndexScan(from);
4809  break;
4810  case T_BitmapHeapScan:
4811  retval = _copyBitmapHeapScan(from);
4812  break;
4813  case T_TidScan:
4814  retval = _copyTidScan(from);
4815  break;
4816  case T_SubqueryScan:
4817  retval = _copySubqueryScan(from);
4818  break;
4819  case T_FunctionScan:
4820  retval = _copyFunctionScan(from);
4821  break;
4822  case T_TableFuncScan:
4823  retval = _copyTableFuncScan(from);
4824  break;
4825  case T_ValuesScan:
4826  retval = _copyValuesScan(from);
4827  break;
4828  case T_CteScan:
4829  retval = _copyCteScan(from);
4830  break;
4831  case T_NamedTuplestoreScan:
4832  retval = _copyNamedTuplestoreScan(from);
4833  break;
4834  case T_WorkTableScan:
4835  retval = _copyWorkTableScan(from);
4836  break;
4837  case T_ForeignScan:
4838  retval = _copyForeignScan(from);
4839  break;
4840  case T_CustomScan:
4841  retval = _copyCustomScan(from);
4842  break;
4843  case T_Join:
4844  retval = _copyJoin(from);
4845  break;
4846  case T_NestLoop:
4847  retval = _copyNestLoop(from);
4848  break;
4849  case T_MergeJoin:
4850  retval = _copyMergeJoin(from);
4851  break;
4852  case T_HashJoin:
4853  retval = _copyHashJoin(from);
4854  break;
4855  case T_Material:
4856  retval = _copyMaterial(from);
4857  break;
4858  case T_Sort:
4859  retval = _copySort(from);
4860  break;
4861  case T_Group:
4862  retval = _copyGroup(from);
4863  break;
4864  case T_Agg:
4865  retval = _copyAgg(from);
4866  break;
4867  case T_WindowAgg:
4868  retval = _copyWindowAgg(from);
4869  break;
4870  case T_Unique:
4871  retval = _copyUnique(from);
4872  break;
4873  case T_Hash:
4874  retval = _copyHash(from);
4875  break;
4876  case T_SetOp:
4877  retval = _copySetOp(from);
4878  break;
4879  case T_LockRows:
4880  retval = _copyLockRows(from);
4881  break;
4882  case T_Limit:
4883  retval = _copyLimit(from);
4884  break;
4885  case T_NestLoopParam:
4886  retval = _copyNestLoopParam(from);
4887  break;
4888  case T_PlanRowMark:
4889  retval = _copyPlanRowMark(from);
4890  break;
4891  case T_PartitionPruneInfo:
4892  retval = _copyPartitionPruneInfo(from);
4893  break;
4895  retval = _copyPartitionedRelPruneInfo(from);
4896  break;
4898  retval = _copyPartitionPruneStepOp(from);
4899  break;
4901  retval = _copyPartitionPruneStepCombine(from);
4902  break;
4903  case T_PlanInvalItem:
4904  retval = _copyPlanInvalItem(from);
4905  break;
4906 
4907  /*
4908  * PRIMITIVE NODES
4909  */
4910  case T_Alias:
4911  retval = _copyAlias(from);
4912  break;
4913  case T_RangeVar:
4914  retval = _copyRangeVar(from);
4915  break;
4916  case T_TableFunc:
4917  retval = _copyTableFunc(from);
4918  break;
4919  case T_IntoClause:
4920  retval = _copyIntoClause(from);
4921  break;
4922  case T_Var:
4923  retval = _copyVar(from);
4924  break;
4925  case T_Const:
4926  retval = _copyConst(from);
4927  break;
4928  case T_Param:
4929  retval = _copyParam(from);
4930  break;
4931  case T_Aggref:
4932  retval = _copyAggref(from);
4933  break;
4934  case T_GroupingFunc:
4935  retval = _copyGroupingFunc(from);
4936  break;
4937  case T_WindowFunc:
4938  retval = _copyWindowFunc(from);
4939  break;
4940  case T_SubscriptingRef:
4941  retval = _copySubscriptingRef(from);
4942  break;
4943  case T_FuncExpr:
4944  retval = _copyFuncExpr(from);
4945  break;
4946  case T_NamedArgExpr:
4947  retval = _copyNamedArgExpr(from);
4948  break;
4949  case T_OpExpr:
4950  retval = _copyOpExpr(from);
4951  break;
4952  case T_DistinctExpr:
4953  retval = _copyDistinctExpr(from);
4954  break;
4955  case T_NullIfExpr:
4956  retval = _copyNullIfExpr(from);
4957  break;
4958  case T_ScalarArrayOpExpr:
4959  retval = _copyScalarArrayOpExpr(from);
4960  break;
4961  case T_BoolExpr:
4962  retval = _copyBoolExpr(from);
4963  break;
4964  case T_SubLink:
4965  retval = _copySubLink(from);
4966  break;
4967  case T_SubPlan:
4968  retval = _copySubPlan(from);
4969  break;
4970  case T_AlternativeSubPlan:
4971  retval = _copyAlternativeSubPlan(from);
4972  break;
4973  case T_FieldSelect:
4974  retval = _copyFieldSelect(from);
4975  break;
4976  case T_FieldStore:
4977  retval = _copyFieldStore(from);
4978  break;
4979  case T_RelabelType:
4980  retval = _copyRelabelType(from);
4981  break;
4982  case T_CoerceViaIO:
4983  retval = _copyCoerceViaIO(from);
4984  break;
4985  case T_ArrayCoerceExpr:
4986  retval = _copyArrayCoerceExpr(from);
4987  break;
4988  case T_ConvertRowtypeExpr:
4989  retval = _copyConvertRowtypeExpr(from);
4990  break;
4991  case T_CollateExpr:
4992  retval = _copyCollateExpr(from);
4993  break;
4994  case T_CaseExpr:
4995  retval = _copyCaseExpr(from);
4996  break;
4997  case T_CaseWhen:
4998  retval = _copyCaseWhen(from);
4999  break;
5000  case T_CaseTestExpr:
5001  retval = _copyCaseTestExpr(from);
5002  break;
5003  case T_ArrayExpr:
5004  retval = _copyArrayExpr(from);
5005  break;
5006  case T_RowExpr:
5007  retval = _copyRowExpr(from);
5008  break;
5009  case T_RowCompareExpr:
5010  retval = _copyRowCompareExpr(from);
5011  break;
5012  case T_CoalesceExpr:
5013  retval = _copyCoalesceExpr(from);
5014  break;
5015  case T_MinMaxExpr:
5016  retval = _copyMinMaxExpr(from);
5017  break;
5018  case T_SQLValueFunction:
5019  retval = _copySQLValueFunction(from);
5020  break;
5021  case T_XmlExpr:
5022  retval = _copyXmlExpr(from);
5023  break;
5024  case T_NullTest:
5025  retval = _copyNullTest(from);
5026  break;
5027  case T_BooleanTest:
5028  retval = _copyBooleanTest(from);
5029  break;
5030  case T_CoerceToDomain:
5031  retval = _copyCoerceToDomain(from);
5032  break;
5033  case T_CoerceToDomainValue:
5034  retval = _copyCoerceToDomainValue(from);
5035  break;
5036  case T_SetToDefault:
5037  retval = _copySetToDefault(from);
5038  break;
5039  case T_CurrentOfExpr:
5040  retval = _copyCurrentOfExpr(from);
5041  break;
5042  case T_NextValueExpr:
5043  retval = _copyNextValueExpr(from);
5044  break;
5045  case T_InferenceElem:
5046  retval = _copyInferenceElem(from);
5047  break;
5048  case T_TargetEntry:
5049  retval = _copyTargetEntry(from);
5050  break;
5051  case T_RangeTblRef:
5052  retval = _copyRangeTblRef(from);
5053  break;
5054  case T_JoinExpr:
5055  retval = _copyJoinExpr(from);
5056  break;
5057  case T_FromExpr:
5058  retval = _copyFromExpr(from);
5059  break;
5060  case T_OnConflictExpr:
5061  retval = _copyOnConflictExpr(from);
5062  break;
5063 
5064  /*
5065  * RELATION NODES
5066  */
5067  case T_PathKey:
5068  retval = _copyPathKey(from);
5069  break;
5070  case T_RestrictInfo:
5071  retval = _copyRestrictInfo(from);
5072  break;
5073  case T_PlaceHolderVar:
5074  retval = _copyPlaceHolderVar(from);
5075  break;
5076  case T_SpecialJoinInfo:
5077  retval = _copySpecialJoinInfo(from);
5078  break;
5079  case T_AppendRelInfo:
5080  retval = _copyAppendRelInfo(from);
5081  break;
5082  case T_PlaceHolderInfo:
5083  retval = _copyPlaceHolderInfo(from);
5084  break;
5085 
5086  /*
5087  * VALUE NODES
5088  */
5089  case T_Integer:
5090  case T_Float:
5091  case T_String:
5092  case T_BitString:
5093  case T_Null:
5094  retval = _copyValue(from);
5095  break;
5096 
5097  /*
5098  * LIST NODES
5099  */
5100  case T_List:
5101  retval = list_copy_deep(from);
5102  break;
5103 
5104  /*
5105  * Lists of integers and OIDs don't need to be deep-copied, so we
5106  * perform a shallow copy via list_copy()
5107  */
5108  case T_IntList:
5109  case T_OidList:
5110  retval = list_copy(from);
5111  break;
5112 
5113  /*
5114  * EXTENSIBLE NODES
5115  */
5116  case T_ExtensibleNode:
5117  retval = _copyExtensibleNode(from);
5118  break;
5119 
5120  /*
5121  * PARSE NODES
5122  */
5123  case T_Query:
5124  retval = _copyQuery(from);
5125  break;
5126  case T_RawStmt:
5127  retval = _copyRawStmt(from);
5128  break;
5129  case T_InsertStmt:
5130  retval = _copyInsertStmt(from);
5131  break;
5132  case T_DeleteStmt:
5133  retval = _copyDeleteStmt(from);
5134  break;
5135  case T_UpdateStmt:
5136  retval = _copyUpdateStmt(from);
5137  break;
5138  case T_SelectStmt:
5139  retval = _copySelectStmt(from);
5140  break;
5141  case T_SetOperationStmt:
5142  retval = _copySetOperationStmt(from);
5143  break;
5144  case T_AlterTableStmt:
5145  retval = _copyAlterTableStmt(from);
5146  break;
5147  case T_AlterTableCmd:
5148  retval = _copyAlterTableCmd(from);
5149  break;
5150  case T_AlterCollationStmt:
5151  retval = _copyAlterCollationStmt(from);
5152  break;
5153  case T_AlterDomainStmt:
5154  retval = _copyAlterDomainStmt(from);
5155  break;
5156  case T_GrantStmt:
5157  retval = _copyGrantStmt(from);
5158  break;
5159  case T_GrantRoleStmt:
5160  retval = _copyGrantRoleStmt(from);
5161  break;
5163  retval = _copyAlterDefaultPrivilegesStmt(from);
5164  break;
5165  case T_DeclareCursorStmt:
5166  retval = _copyDeclareCursorStmt(from);
5167  break;
5168  case T_ClosePortalStmt:
5169  retval = _copyClosePortalStmt(from);
5170  break;
5171  case T_CallStmt:
5172  retval = _copyCallStmt(from);
5173  break;
5174  case T_ClusterStmt:
5175  retval = _copyClusterStmt(from);
5176  break;
5177  case T_CopyStmt:
5178  retval = _copyCopyStmt(from);
5179  break;
5180  case T_CreateStmt:
5181  retval = _copyCreateStmt(from);
5182  break;
5183  case T_TableLikeClause:
5184  retval = _copyTableLikeClause(from);
5185  break;
5186  case T_DefineStmt:
5187  retval = _copyDefineStmt(from);
5188  break;
5189  case T_DropStmt:
5190  retval = _copyDropStmt(from);
5191  break;
5192  case T_TruncateStmt:
5193  retval = _copyTruncateStmt(from);
5194  break;
5195  case T_CommentStmt:
5196  retval = _copyCommentStmt(from);
5197  break;
5198  case T_SecLabelStmt:
5199  retval = _copySecLabelStmt(from);
5200  break;
5201  case T_FetchStmt:
5202  retval = _copyFetchStmt(from);
5203  break;
5204  case T_IndexStmt:
5205  retval = _copyIndexStmt(from);
5206  break;
5207  case T_CreateStatsStmt:
5208  retval = _copyCreateStatsStmt(from);
5209  break;
5210  case T_CreateFunctionStmt:
5211  retval = _copyCreateFunctionStmt(from);
5212  break;
5213  case T_FunctionParameter:
5214  retval = _copyFunctionParameter(from);
5215  break;
5216  case T_AlterFunctionStmt:
5217  retval = _copyAlterFunctionStmt(from);
5218  break;
5219  case T_DoStmt:
5220  retval = _copyDoStmt(from);
5221  break;
5222  case T_RenameStmt:
5223  retval = _copyRenameStmt(from);
5224  break;
5226  retval = _copyAlterObjectDependsStmt(from);
5227  break;
5229  retval = _copyAlterObjectSchemaStmt(from);
5230  break;
5231  case T_AlterOwnerStmt:
5232  retval = _copyAlterOwnerStmt(from);
5233  break;
5234  case T_AlterOperatorStmt:
5235  retval = _copyAlterOperatorStmt(from);
5236  break;
5237  case T_RuleStmt:
5238  retval = _copyRuleStmt(from);
5239  break;
5240  case T_NotifyStmt:
5241  retval = _copyNotifyStmt(from);
5242  break;
5243  case T_ListenStmt:
5244  retval = _copyListenStmt(from);
5245  break;
5246  case T_UnlistenStmt:
5247  retval = _copyUnlistenStmt(from);
5248  break;
5249  case T_TransactionStmt:
5250  retval = _copyTransactionStmt(from);
5251  break;
5252  case T_CompositeTypeStmt:
5253  retval = _copyCompositeTypeStmt(from);
5254  break;
5255  case T_CreateEnumStmt:
5256  retval = _copyCreateEnumStmt(from);
5257  break;
5258  case T_CreateRangeStmt:
5259  retval = _copyCreateRangeStmt(from);
5260  break;
5261  case T_AlterEnumStmt:
5262  retval = _copyAlterEnumStmt(from);
5263  break;
5264  case T_ViewStmt:
5265  retval = _copyViewStmt(from);
5266  break;
5267  case T_LoadStmt:
5268  retval = _copyLoadStmt(from);
5269  break;
5270  case T_CreateDomainStmt:
5271  retval = _copyCreateDomainStmt(from);
5272  break;
5273  case T_CreateOpClassStmt:
5274  retval = _copyCreateOpClassStmt(from);
5275  break;
5276  case T_CreateOpClassItem:
5277  retval = _copyCreateOpClassItem(from);
5278  break;
5279  case T_CreateOpFamilyStmt:
5280  retval = _copyCreateOpFamilyStmt(from);
5281  break;
5282  case T_AlterOpFamilyStmt:
5283  retval = _copyAlterOpFamilyStmt(from);
5284  break;
5285  case T_CreatedbStmt:
5286  retval = _copyCreatedbStmt(from);
5287  break;
5288  case T_AlterDatabaseStmt:
5289  retval = _copyAlterDatabaseStmt(from);
5290  break;
5292  retval = _copyAlterDatabaseSetStmt(from);
5293  break;
5294  case T_DropdbStmt:
5295  retval = _copyDropdbStmt(from);
5296  break;
5297  case T_VacuumStmt:
5298  retval = _copyVacuumStmt(from);
5299  break;
5300  case T_VacuumRelation:
5301  retval = _copyVacuumRelation(from);
5302  break;
5303  case T_ExplainStmt:
5304  retval = _copyExplainStmt(from);
5305  break;
5306  case T_CreateTableAsStmt:
5307  retval = _copyCreateTableAsStmt(from);
5308  break;
5309  case T_RefreshMatViewStmt:
5310  retval = _copyRefreshMatViewStmt(from);
5311  break;
5312  case T_ReplicaIdentityStmt:
5313  retval = _copyReplicaIdentityStmt(from);
5314  break;
5315  case T_AlterSystemStmt:
5316  retval = _copyAlterSystemStmt(from);
5317  break;
5318  case T_CreateSeqStmt:
5319  retval = _copyCreateSeqStmt(from);
5320  break;
5321  case T_AlterSeqStmt:
5322  retval = _copyAlterSeqStmt(from);
5323  break;
5324  case T_VariableSetStmt:
5325  retval = _copyVariableSetStmt(from);
5326  break;
5327  case T_VariableShowStmt:
5328  retval = _copyVariableShowStmt(from);
5329  break;
5330  case T_DiscardStmt:
5331  retval = _copyDiscardStmt(from);
5332  break;
5334  retval = _copyCreateTableSpaceStmt(from);
5335  break;
5336  case T_DropTableSpaceStmt:
5337  retval = _copyDropTableSpaceStmt(from);
5338  break;
5340  retval = _copyAlterTableSpaceOptionsStmt(from);
5341  break;
5343  retval = _copyAlterTableMoveAllStmt(from);
5344  break;
5345  case T_CreateExtensionStmt:
5346  retval = _copyCreateExtensionStmt(from);
5347  break;
5348  case T_AlterExtensionStmt:
5349  retval = _copyAlterExtensionStmt(from);
5350  break;
5352  retval = _copyAlterExtensionContentsStmt(from);
5353  break;
5354  case T_CreateFdwStmt:
5355  retval = _copyCreateFdwStmt(from);
5356  break;
5357  case T_AlterFdwStmt:
5358  retval = _copyAlterFdwStmt(from);
5359  break;
5361  retval = _copyCreateForeignServerStmt(from);
5362  break;
5364  retval = _copyAlterForeignServerStmt(from);
5365  break;
5367  retval = _copyCreateUserMappingStmt(from);
5368  break;
5370  retval = _copyAlterUserMappingStmt(from);
5371  break;
5372  case T_DropUserMappingStmt:
5373  retval = _copyDropUserMappingStmt(from);
5374  break;
5376  retval = _copyCreateForeignTableStmt(from);
5377  break;
5379  retval = _copyImportForeignSchemaStmt(from);
5380  break;
5381  case T_CreateTransformStmt:
5382  retval = _copyCreateTransformStmt(from);
5383  break;
5384  case T_CreateAmStmt:
5385  retval = _copyCreateAmStmt(from);
5386  break;
5387  case T_CreateTrigStmt:
5388  retval = _copyCreateTrigStmt(from);
5389  break;
5390  case T_CreateEventTrigStmt:
5391  retval = _copyCreateEventTrigStmt(from);
5392  break;
5393  case T_AlterEventTrigStmt:
5394  retval = _copyAlterEventTrigStmt(from);
5395  break;
5396  case T_CreatePLangStmt:
5397  retval = _copyCreatePLangStmt(from);
5398  break;
5399  case T_CreateRoleStmt:
5400  retval = _copyCreateRoleStmt(from);
5401  break;
5402  case T_AlterRoleStmt:
5403  retval = _copyAlterRoleStmt(from);
5404  break;
5405  case T_AlterRoleSetStmt:
5406  retval = _copyAlterRoleSetStmt(from);
5407  break;
5408  case T_DropRoleStmt:
5409  retval = _copyDropRoleStmt(from);
5410  break;
5411  case T_LockStmt:
5412  retval = _copyLockStmt(from);
5413  break;
5414  case T_ConstraintsSetStmt:
5415  retval = _copyConstraintsSetStmt(from);
5416  break;
5417  case T_ReindexStmt:
5418  retval = _copyReindexStmt(from);
5419  break;
5420  case T_CheckPointStmt:
5421  retval = (void *) makeNode(CheckPointStmt);
5422  break;
5423  case T_CreateSchemaStmt:
5424  retval = _copyCreateSchemaStmt(from);
5425  break;
5427  retval = _copyCreateConversionStmt(from);
5428  break;
5429  case T_CreateCastStmt:
5430  retval = _copyCreateCastStmt(from);
5431  break;
5432  case T_PrepareStmt:
5433  retval = _copyPrepareStmt(from);
5434  break;
5435  case T_ExecuteStmt:
5436  retval = _copyExecuteStmt(from);
5437  break;
5438  case T_DeallocateStmt:
5439  retval = _copyDeallocateStmt(from);
5440  break;
5441  case T_DropOwnedStmt:
5442  retval = _copyDropOwnedStmt(from);
5443  break;
5444  case T_ReassignOwnedStmt:
5445  retval = _copyReassignOwnedStmt(from);
5446  break;
5448  retval = _copyAlterTSDictionaryStmt(from);
5449  break;
5451  retval = _copyAlterTSConfigurationStmt(from);
5452  break;
5453  case T_CreatePolicyStmt:
5454  retval = _copyCreatePolicyStmt(from);
5455  break;
5456  case T_AlterPolicyStmt:
5457  retval = _copyAlterPolicyStmt(from);
5458  break;
5460  retval = _copyCreatePublicationStmt(from);
5461  break;
5463  retval = _copyAlterPublicationStmt(from);
5464  break;
5466  retval = _copyCreateSubscriptionStmt(from);
5467  break;
5469  retval = _copyAlterSubscriptionStmt(from);
5470  break;
5472  retval = _copyDropSubscriptionStmt(from);
5473  break;
5474  case T_A_Expr:
5475  retval = _copyAExpr(from);
5476  break;
5477  case T_ColumnRef:
5478  retval = _copyColumnRef(from);
5479  break;
5480  case T_ParamRef:
5481  retval = _copyParamRef(from);
5482  break;
5483  case T_A_Const:
5484  retval = _copyAConst(from);
5485  break;
5486  case T_FuncCall:
5487  retval = _copyFuncCall(from);
5488  break;
5489  case T_A_Star:
5490  retval = _copyAStar(from);
5491  break;
5492  case T_A_Indices:
5493  retval = _copyAIndices(from);
5494  break;
5495  case T_A_Indirection:
5496  retval = _copyA_Indirection(from);
5497  break;
5498  case T_A_ArrayExpr:
5499  retval = _copyA_ArrayExpr(from);
5500  break;
5501  case T_ResTarget:
5502  retval = _copyResTarget(from);
5503  break;
5504  case T_MultiAssignRef:
5505  retval = _copyMultiAssignRef(from);
5506  break;
5507  case T_TypeCast:
5508  retval = _copyTypeCast(from);
5509  break;
5510  case T_CollateClause:
5511  retval = _copyCollateClause(from);
5512  break;
5513  case T_SortBy:
5514  retval = _copySortBy(from);
5515  break;
5516  case T_WindowDef:
5517  retval = _copyWindowDef(from);
5518  break;
5519  case T_RangeSubselect:
5520  retval = _copyRangeSubselect(from);
5521  break;
5522  case T_RangeFunction:
5523  retval = _copyRangeFunction(from);
5524  break;
5525  case T_RangeTableSample:
5526  retval = _copyRangeTableSample(from);
5527  break;
5528  case T_RangeTableFunc:
5529  retval = _copyRangeTableFunc(from);
5530  break;
5531  case T_RangeTableFuncCol:
5532  retval = _copyRangeTableFuncCol(from);
5533  break;
5534  case T_TypeName:
5535  retval = _copyTypeName(from);
5536  break;
5537  case T_IndexElem:
5538  retval = _copyIndexElem(from);
5539  break;
5540  case T_ColumnDef:
5541  retval = _copyColumnDef(from);
5542  break;
5543  case T_Constraint:
5544  retval = _copyConstraint(from);
5545  break;
5546  case T_DefElem:
5547  retval = _copyDefElem(from);
5548  break;
5549  case T_LockingClause:
5550  retval = _copyLockingClause(from);
5551  break;
5552  case T_RangeTblEntry:
5553  retval = _copyRangeTblEntry(from);
5554  break;
5555  case T_RangeTblFunction:
5556  retval = _copyRangeTblFunction(from);
5557  break;
5558  case T_TableSampleClause:
5559  retval = _copyTableSampleClause(from);
5560  break;
5561  case T_WithCheckOption:
5562  retval = _copyWithCheckOption(from);
5563  break;
5564  case T_SortGroupClause:
5565  retval = _copySortGroupClause(from);
5566  break;
5567  case T_GroupingSet:
5568  retval = _copyGroupingSet(from);
5569  break;
5570  case T_WindowClause:
5571  retval = _copyWindowClause(from);
5572  break;
5573  case T_RowMarkClause:
5574  retval = _copyRowMarkClause(from);
5575  break;
5576  case T_WithClause:
5577  retval = _copyWithClause(from);
5578  break;
5579  case T_InferClause:
5580  retval = _copyInferClause(from);
5581  break;
5582  case T_OnConflictClause:
5583  retval = _copyOnConflictClause(from);
5584  break;
5585  case T_CommonTableExpr:
5586  retval = _copyCommonTableExpr(from);
5587  break;
5588  case T_ObjectWithArgs:
5589  retval = _copyObjectWithArgs(from);
5590  break;
5591  case T_AccessPriv:
5592  retval = _copyAccessPriv(from);
5593  break;
5594  case T_XmlSerialize:
5595  retval = _copyXmlSerialize(from);
5596  break;
5597  case T_RoleSpec:
5598  retval = _copyRoleSpec(from);
5599  break;
5600  case T_TriggerTransition:
5601  retval = _copyTriggerTransition(from);
5602  break;
5603  case T_PartitionElem:
5604  retval = _copyPartitionElem(from);
5605  break;
5606  case T_PartitionSpec:
5607  retval = _copyPartitionSpec(from);
5608  break;
5609  case T_PartitionBoundSpec:
5610  retval = _copyPartitionBoundSpec(from);
5611  break;
5612  case T_PartitionRangeDatum:
5613  retval = _copyPartitionRangeDatum(from);
5614  break;
5615  case T_PartitionCmd:
5616  retval = _copyPartitionCmd(from);
5617  break;
5618 
5619  /*
5620  * MISCELLANEOUS NODES
5621  */
5622  case T_ForeignKeyCacheInfo:
5623  retval = _copyForeignKeyCacheInfo(from);
5624  break;
5625 
5626  default:
5627  elog(ERROR, "unrecognized node type: %d", (int) nodeTag(from));
5628  retval = 0; /* keep compiler quiet */
5629  break;
5630  }
5631 
5632  return retval;
5633 }
static PartitionPruneStepOp * _copyPartitionPruneStepOp(const PartitionPruneStepOp *from)
Definition: copyfuncs.c:1217
static Limit * _copyLimit(const Limit *from)
Definition: copyfuncs.c:1132
static WindowClause * _copyWindowClause(const WindowClause *from)
Definition: copyfuncs.c:2465
static CreateEnumStmt * _copyCreateEnumStmt(const CreateEnumStmt *from)
Definition: copyfuncs.c:3687
static RefreshMatViewStmt * _copyRefreshMatViewStmt(const RefreshMatViewStmt *from)
Definition: copyfuncs.c:3909
static RangeSubselect * _copyRangeSubselect(const RangeSubselect *from)
Definition: copyfuncs.c:2761
static AlterSystemStmt * _copyAlterSystemStmt(const AlterSystemStmt *from)
Definition: copyfuncs.c:3932
static DeallocateStmt * _copyDeallocateStmt(const DeallocateStmt *from)
Definition: copyfuncs.c:4441
static PlanInvalItem * _copyPlanInvalItem(const PlanInvalItem *from)
Definition: copyfuncs.c:1249
static Scan * _copyScan(const Scan *from)
Definition: copyfuncs.c:421
static AlterEventTrigStmt * _copyAlterEventTrigStmt(const AlterEventTrigStmt *from)
Definition: copyfuncs.c:4267
static SeqScan * _copySeqScan(const SeqScan *from)
Definition: copyfuncs.c:437
static AlterTableMoveAllStmt * _copyAlterTableMoveAllStmt(const AlterTableMoveAllStmt *from)
Definition: copyfuncs.c:4038
static DiscardStmt * _copyDiscardStmt(const DiscardStmt *from)
Definition: copyfuncs.c:3992
static DeleteStmt * _copyDeleteStmt(const DeleteStmt *from)
Definition: copyfuncs.c:3073
static Unique * _copyUnique(const Unique *from)
Definition: copyfuncs.c:1033
static BitmapAnd * _copyBitmapAnd(const BitmapAnd *from)
Definition: copyfuncs.c:311
static AccessPriv * _copyAccessPriv(const AccessPriv *from)
Definition: copyfuncs.c:3229
static FromExpr * _copyFromExpr(const FromExpr *from)
Definition: copyfuncs.c:2174
Definition: nodes.h:78
static DropStmt * _copyDropStmt(const DropStmt *from)
Definition: copyfuncs.c:3388
static Plan * _copyPlan(const Plan *from)
Definition: copyfuncs.c:137
static PartitionedRelPruneInfo * _copyPartitionedRelPruneInfo(const PartitionedRelPruneInfo *from)
Definition: copyfuncs.c:1196
static LockStmt * _copyLockStmt(const LockStmt *from)
Definition: copyfuncs.c:4340
static RowMarkClause * _copyRowMarkClause(const RowMarkClause *from)
Definition: copyfuncs.c:2488
static Var * _copyVar(const Var *from)
Definition: copyfuncs.c:1353
static ValuesScan * _copyValuesScan(const ValuesScan *from)
Definition: copyfuncs.c:656
static AlterForeignServerStmt * _copyAlterForeignServerStmt(const AlterForeignServerStmt *from)
Definition: copyfuncs.c:4127
static RowExpr * _copyRowExpr(const RowExpr *from)
Definition: copyfuncs.c:1891
static VariableShowStmt * _copyVariableShowStmt(const VariableShowStmt *from)
Definition: copyfuncs.c:3982
Definition: nodes.h:80
static TransactionStmt * _copyTransactionStmt(const TransactionStmt *from)
Definition: copyfuncs.c:3662
static TableLikeClause * _copyTableLikeClause(const TableLikeClause *from)
Definition: copyfuncs.c:3361
static CreatePolicyStmt * _copyCreatePolicyStmt(const CreatePolicyStmt *from)
Definition: copyfuncs.c:4500
static AlterEnumStmt * _copyAlterEnumStmt(const AlterEnumStmt *from)
Definition: copyfuncs.c:3709
Definition: nodes.h:54
static AlterExtensionStmt * _copyAlterExtensionStmt(const AlterExtensionStmt *from)
Definition: copyfuncs.c:4064
static DeclareCursorStmt * _copyDeclareCursorStmt(const DeclareCursorStmt *from)
Definition: copyfuncs.c:3266
static A_Const * _copyAConst(const A_Const *from)
Definition: copyfuncs.c:2596
static HashJoin * _copyHashJoin(const HashJoin *from)
Definition: copyfuncs.c:889
static AlterFdwStmt * _copyAlterFdwStmt(const AlterFdwStmt *from)
Definition: copyfuncs.c:4100
static PartitionSpec * _copyPartitionSpec(const PartitionSpec *from)
Definition: copyfuncs.c:4544
static GroupingSet * _copyGroupingSet(const GroupingSet *from)
Definition: copyfuncs.c:2453
static DropRoleStmt * _copyDropRoleStmt(const DropRoleStmt *from)
Definition: copyfuncs.c:4329
static CreateAmStmt * _copyCreateAmStmt(const CreateAmStmt *from)
Definition: copyfuncs.c:4219
static AlternativeSubPlan * _copyAlternativeSubPlan(const AlternativeSubPlan *from)
Definition: copyfuncs.c:1694
static UnlistenStmt * _copyUnlistenStmt(const UnlistenStmt *from)
Definition: copyfuncs.c:3652
static Hash * _copyHash(const Hash *from)
Definition: copyfuncs.c:1057
static AlterTSConfigurationStmt * _copyAlterTSConfigurationStmt(const AlterTSConfigurationStmt *from)
Definition: copyfuncs.c:4484
static CreateOpClassStmt * _copyCreateOpClassStmt(const CreateOpClassStmt *from)
Definition: copyfuncs.c:3762
static Result * _copyResult(const Result *from)
Definition: copyfuncs.c:154
static Material * _copyMaterial(const Material *from)
Definition: copyfuncs.c:911
static GatherMerge * _copyGatherMerge(const GatherMerge *from)
Definition: copyfuncs.c:379
static RestrictInfo * _copyRestrictInfo(const RestrictInfo *from)
Definition: copyfuncs.c:2233
static ClusterStmt * _copyClusterStmt(const ClusterStmt *from)
Definition: copyfuncs.c:3299
static FunctionScan * _copyFunctionScan(const FunctionScan *from)
Definition: copyfuncs.c:613
static AlterFunctionStmt * _copyAlterFunctionStmt(const AlterFunctionStmt *from)
Definition: copyfuncs.c:3525
static SortBy * _copySortBy(const SortBy *from)
Definition: copyfuncs.c:2730
static MergeJoin * _copyMergeJoin(const MergeJoin *from)
Definition: copyfuncs.c:858
static AlterCollationStmt * _copyAlterCollationStmt(const AlterCollationStmt *from)
Definition: copyfuncs.c:3175
static RuleStmt * _copyRuleStmt(const RuleStmt *from)
Definition: copyfuncs.c:3615
static ImportForeignSchemaStmt * _copyImportForeignSchemaStmt(const ImportForeignSchemaStmt *from)
Definition: copyfuncs.c:4190
static FuncCall * _copyFuncCall(const FuncCall *from)
Definition: copyfuncs.c:2627
static RangeVar * _copyRangeVar(const RangeVar *from)
Definition: copyfuncs.c:1282
static CreatedbStmt * _copyCreatedbStmt(const CreatedbStmt *from)
Definition: copyfuncs.c:3816
static CopyStmt * _copyCopyStmt(const CopyStmt *from)
Definition: copyfuncs.c:3311
List * list_copy(const List *oldlist)
Definition: list.c:1357
static PartitionBoundSpec * _copyPartitionBoundSpec(const PartitionBoundSpec *from)
Definition: copyfuncs.c:4556
static CreateTableSpaceStmt * _copyCreateTableSpaceStmt(const CreateTableSpaceStmt *from)
Definition: copyfuncs.c:4002
static GrantStmt * _copyGrantStmt(const GrantStmt *from)
Definition: copyfuncs.c:3200
static Value * _copyValue(const Value *from)
Definition: copyfuncs.c:4687
Definition: nodes.h:49
static AlterOperatorStmt * _copyAlterOperatorStmt(const AlterOperatorStmt *from)
Definition: copyfuncs.c:3604
static Alias * _copyAlias(const Alias *from)
Definition: copyfuncs.c:1268
static BitmapHeapScan * _copyBitmapHeapScan(const BitmapHeapScan *from)
Definition: copyfuncs.c:550
static Sort * _copySort(const Sort *from)
Definition: copyfuncs.c:928
static A_ArrayExpr * _copyA_ArrayExpr(const A_ArrayExpr *from)
Definition: copyfuncs.c:2677
static Agg * _copyAgg(const Agg *from)
Definition: copyfuncs.c:969
static IntoClause * _copyIntoClause(const IntoClause *from)
Definition: copyfuncs.c:1326
static ParamRef * _copyParamRef(const ParamRef *from)
Definition: copyfuncs.c:2585
Definition: nodes.h:76
static IndexStmt * _copyIndexStmt(const IndexStmt *from)
Definition: copyfuncs.c:3452
static FuncExpr * _copyFuncExpr(const FuncExpr *from)
Definition: copyfuncs.c:1518
static ObjectWithArgs * _copyObjectWithArgs(const ObjectWithArgs *from)
Definition: copyfuncs.c:3217
static BoolExpr * _copyBoolExpr(const BoolExpr *from)
Definition: copyfuncs.c:1633
static PathKey * _copyPathKey(const PathKey *from)
Definition: copyfuncs.c:2216
static DefineStmt * _copyDefineStmt(const DefineStmt *from)
Definition: copyfuncs.c:3372
static Join * _copyJoin(const Join *from)
Definition: copyfuncs.c:819
static WithClause * _copyWithClause(const WithClause *from)
Definition: copyfuncs.c:2501
static TypeName * _copyTypeName(const TypeName *from)
Definition: copyfuncs.c:2713
static WindowAgg * _copyWindowAgg(const WindowAgg *from)
Definition: copyfuncs.c:996
static PlannedStmt * _copyPlannedStmt(const PlannedStmt *from)
Definition: copyfuncs.c:78
static WindowDef * _copyWindowDef(const WindowDef *from)
Definition: copyfuncs.c:2744
static ScalarArrayOpExpr * _copyScalarArrayOpExpr(const ScalarArrayOpExpr *from)
Definition: copyfuncs.c:1615
static ExecuteStmt * _copyExecuteStmt(const ExecuteStmt *from)
Definition: copyfuncs.c:4430
static SubqueryScan * _copySubqueryScan(const SubqueryScan *from)
Definition: copyfuncs.c:592
static WithCheckOption * _copyWithCheckOption(const WithCheckOption *from)
Definition: copyfuncs.c:2425
static ReplicaIdentityStmt * _copyReplicaIdentityStmt(const ReplicaIdentityStmt *from)
Definition: copyfuncs.c:3921
static ExplainStmt * _copyExplainStmt(const ExplainStmt *from)
Definition: copyfuncs.c:3884
static TableSampleClause * _copyTableSampleClause(const TableSampleClause *from)
Definition: copyfuncs.c:2413
static DropUserMappingStmt * _copyDropUserMappingStmt(const DropUserMappingStmt *from)
Definition: copyfuncs.c:4165
static PartitionCmd * _copyPartitionCmd(const PartitionCmd *from)
Definition: copyfuncs.c:4585
static NestLoop * _copyNestLoop(const NestLoop *from)
Definition: copyfuncs.c:836
static Query * _copyQuery(const Query *from)
Definition: copyfuncs.c:3000
static XmlSerialize * _copyXmlSerialize(const XmlSerialize *from)
Definition: copyfuncs.c:2963
static ConvertRowtypeExpr * _copyConvertRowtypeExpr(const ConvertRowtypeExpr *from)
Definition: copyfuncs.c:1794
static RawStmt * _copyRawStmt(const RawStmt *from)
Definition: copyfuncs.c:3045
static PlaceHolderVar * _copyPlaceHolderVar(const PlaceHolderVar *from)
Definition: copyfuncs.c:2278
static BitmapOr * _copyBitmapOr(const BitmapOr *from)
Definition: copyfuncs.c:332
static RenameStmt * _copyRenameStmt(const RenameStmt *from)
Definition: copyfuncs.c:3547
List * list_copy_deep(const List *oldlist)
Definition: list.c:1402
static ReassignOwnedStmt * _copyReassignOwnedStmt(const ReassignOwnedStmt *from)
Definition: copyfuncs.c:4462
static ColumnDef * _copyColumnDef(const ColumnDef *from)
Definition: copyfuncs.c:2874
static A_Star * _copyAStar(const A_Star *from)
Definition: copyfuncs.c:2646
static SpecialJoinInfo * _copySpecialJoinInfo(const SpecialJoinInfo *from)
Definition: copyfuncs.c:2294
static RelabelType * _copyRelabelType(const RelabelType *from)
Definition: copyfuncs.c:1740
static CaseTestExpr * _copyCaseTestExpr(const CaseTestExpr *from)
Definition: copyfuncs.c:1858
static CreatePublicationStmt * _copyCreatePublicationStmt(const CreatePublicationStmt *from)
Definition: copyfuncs.c:4596
static CreateFunctionStmt * _copyCreateFunctionStmt(const CreateFunctionStmt *from)
Definition: copyfuncs.c:3497
static AlterTableStmt * _copyAlterTableStmt(const AlterTableStmt *from)
Definition: copyfuncs.c:3146
static SortGroupClause * _copySortGroupClause(const SortGroupClause *from)
Definition: copyfuncs.c:2439
static ArrayCoerceExpr * _copyArrayCoerceExpr(const ArrayCoerceExpr *from)
Definition: copyfuncs.c:1775
static RoleSpec * _copyRoleSpec(const RoleSpec *from)
Definition: copyfuncs.c:2976
Definition: nodes.h:46
static NextValueExpr * _copyNextValueExpr(const NextValueExpr *from)
Definition: copyfuncs.c:2093
#define ERROR
Definition: elog.h:43
static CreateOpClassItem * _copyCreateOpClassItem(const CreateOpClassItem *from)
Definition: copyfuncs.c:3777
static AlterExtensionContentsStmt * _copyAlterExtensionContentsStmt(const AlterExtensionContentsStmt *from)
Definition: copyfuncs.c:4075
static MergeAppend * _copyMergeAppend(const MergeAppend *from)
Definition: copyfuncs.c:255
static VariableSetStmt * _copyVariableSetStmt(const VariableSetStmt *from)
Definition: copyfuncs.c:3969
static AlterPublicationStmt * _copyAlterPublicationStmt(const AlterPublicationStmt *from)
Definition: copyfuncs.c:4609
static CreateRoleStmt * _copyCreateRoleStmt(const CreateRoleStmt *from)
Definition: copyfuncs.c:4293
static LockingClause * _copyLockingClause(const LockingClause *from)
Definition: copyfuncs.c:2951
static PlaceHolderInfo * _copyPlaceHolderInfo(const PlaceHolderInfo *from)
Definition: copyfuncs.c:2335
static ArrayExpr * _copyArrayExpr(const ArrayExpr *from)
Definition: copyfuncs.c:1873
static CreateExtensionStmt * _copyCreateExtensionStmt(const CreateExtensionStmt *from)
Definition: copyfuncs.c:4052
static SetToDefault * _copySetToDefault(const SetToDefault *from)
Definition: copyfuncs.c:2062
Definition: nodes.h:77
static DropSubscriptionStmt * _copyDropSubscriptionStmt(const DropSubscriptionStmt *from)
Definition: copyfuncs.c:4650
static AlterDefaultPrivilegesStmt * _copyAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *from)
Definition: copyfuncs.c:3255
static CreateSeqStmt * _copyCreateSeqStmt(const CreateSeqStmt *from)
Definition: copyfuncs.c:3942
static CreateSchemaStmt * _copyCreateSchemaStmt(const CreateSchemaStmt *from)
Definition: copyfuncs.c:4377
static AlterOpFamilyStmt * _copyAlterOpFamilyStmt(const AlterOpFamilyStmt *from)
Definition: copyfuncs.c:3803
Definition: nodes.h:147
static AlterObjectSchemaStmt * _copyAlterObjectSchemaStmt(const AlterObjectSchemaStmt *from)
Definition: copyfuncs.c:3577
void check_stack_depth(void)
Definition: postgres.c:3275
static RowCompareExpr * _copyRowCompareExpr(const RowCompareExpr *from)
Definition: copyfuncs.c:1908
static Constraint * _copyConstraint(const Constraint *from)
Definition: copyfuncs.c:2900
static CommentStmt * _copyCommentStmt(const CommentStmt *from)
Definition: copyfuncs.c:3414
static CreateRangeStmt * _copyCreateRangeStmt(const CreateRangeStmt *from)
Definition: copyfuncs.c:3698
static AlterUserMappingStmt * _copyAlterUserMappingStmt(const AlterUserMappingStmt *from)
Definition: copyfuncs.c:4153
static IndexElem * _copyIndexElem(const IndexElem *from)
Definition: copyfuncs.c:2858
static CollateExpr * _copyCollateExpr(const CollateExpr *from)
Definition: copyfuncs.c:1810
static TypeCast * _copyTypeCast(const TypeCast *from)
Definition: copyfuncs.c:2834
static MultiAssignRef * _copyMultiAssignRef(const MultiAssignRef *from)
Definition: copyfuncs.c:2701
static OnConflictExpr * _copyOnConflictExpr(const OnConflictExpr *from)
Definition: copyfuncs.c:2188
static InferenceElem * _copyInferenceElem(const InferenceElem *from)
Definition: copyfuncs.c:2107
static IndexOnlyScan * _copyIndexOnlyScan(const IndexOnlyScan *from)
Definition: copyfuncs.c:501
static CreateConversionStmt * _copyCreateConversionStmt(const CreateConversionStmt *from)
Definition: copyfuncs.c:4390
static CreateForeignTableStmt * _copyCreateForeignTableStmt(const CreateForeignTableStmt *from)
Definition: copyfuncs.c:4177
static SubPlan * _copySubPlan(const SubPlan *from)
Definition: copyfuncs.c:1666
Definition: nodes.h:297
static DropdbStmt * _copyDropdbStmt(const DropdbStmt *from)
Definition: copyfuncs.c:3849
Definition: nodes.h:152
static CreateFdwStmt * _copyCreateFdwStmt(const CreateFdwStmt *from)
Definition: copyfuncs.c:4088
static SQLValueFunction * _copySQLValueFunction(const SQLValueFunction *from)
Definition: copyfuncs.c:1960
static DropTableSpaceStmt * _copyDropTableSpaceStmt(const DropTableSpaceStmt *from)
Definition: copyfuncs.c:4015
Definition: nodes.h:151
static RangeTblEntry * _copyRangeTblEntry(const RangeTblEntry *from)
Definition: copyfuncs.c:2355
static PlanRowMark * _copyPlanRowMark(const PlanRowMark *from)
Definition: copyfuncs.c:1168
static ListenStmt * _copyListenStmt(const ListenStmt *from)
Definition: copyfuncs.c:3642
static ProjectSet * _copyProjectSet(const ProjectSet *from)
Definition: copyfuncs.c:175
Definition: nodes.h:310
static DistinctExpr * _copyDistinctExpr(const DistinctExpr *from)
Definition: copyfuncs.c:1575
static SubscriptingRef * _copySubscriptingRef(const SubscriptingRef *from)
Definition: copyfuncs.c:1498
static LoadStmt * _copyLoadStmt(const LoadStmt *from)
Definition: copyfuncs.c:3739
static ConstraintsSetStmt * _copyConstraintsSetStmt(const ConstraintsSetStmt *from)
Definition: copyfuncs.c:4352
static BitmapIndexScan * _copyBitmapIndexScan(const BitmapIndexScan *from)
Definition: copyfuncs.c:526
static AlterTSDictionaryStmt * _copyAlterTSDictionaryStmt(const AlterTSDictionaryStmt *from)
Definition: copyfuncs.c:4473
static AlterDatabaseStmt * _copyAlterDatabaseStmt(const AlterDatabaseStmt *from)
Definition: copyfuncs.c:3827
static CoalesceExpr * _copyCoalesceExpr(const CoalesceExpr *from)
Definition: copyfuncs.c:1926
static CoerceToDomain * _copyCoerceToDomain(const CoerceToDomain *from)
Definition: copyfuncs.c:2028
static ReindexStmt * _copyReindexStmt(const ReindexStmt *from)
Definition: copyfuncs.c:4363
static ExtensibleNode * _copyExtensibleNode(const ExtensibleNode *from)
Definition: copyfuncs.c:4666
static RangeTableFuncCol * _copyRangeTableFuncCol(const RangeTableFuncCol *from)
Definition: copyfuncs.c:2818
static CaseWhen * _copyCaseWhen(const CaseWhen *from)
Definition: copyfuncs.c:1843
static Gather * _copyGather(const Gather *from)
Definition: copyfuncs.c:354
static FieldSelect * _copyFieldSelect(const FieldSelect *from)
Definition: copyfuncs.c:1707
static CoerceToDomainValue * _copyCoerceToDomainValue(const CoerceToDomainValue *from)
Definition: copyfuncs.c:2046
static SelectStmt * _copySelectStmt(const SelectStmt *from)
Definition: copyfuncs.c:3102
static ViewStmt * _copyViewStmt(const ViewStmt *from)
Definition: copyfuncs.c:3724
static AlterObjectDependsStmt * _copyAlterObjectDependsStmt(const AlterObjectDependsStmt *from)
Definition: copyfuncs.c:3564
static CoerceViaIO * _copyCoerceViaIO(const CoerceViaIO *from)
Definition: copyfuncs.c:1758
Definition: nodes.h:83
static ModifyTable * _copyModifyTable(const ModifyTable *from)
Definition: copyfuncs.c:191
static TableFunc * _copyTableFunc(const TableFunc *from)
Definition: copyfuncs.c:1301
static GrantRoleStmt * _copyGrantRoleStmt(const GrantRoleStmt *from)
Definition: copyfuncs.c:3240
static InsertStmt * _copyInsertStmt(const InsertStmt *from)
Definition: copyfuncs.c:3057
static Append * _copyAppend(const Append *from)
Definition: copyfuncs.c:232
#define makeNode(_type_)
Definition: nodes.h:572
static AppendRelInfo * _copyAppendRelInfo(const AppendRelInfo *from)
Definition: copyfuncs.c:2317
static NullTest * _copyNullTest(const NullTest *from)
Definition: copyfuncs.c:1997
static CreateTableAsStmt * _copyCreateTableAsStmt(const CreateTableAsStmt *from)
Definition: copyfuncs.c:3895
static Aggref * _copyAggref(const Aggref *from)
Definition: copyfuncs.c:1430
static CreateUserMappingStmt * _copyCreateUserMappingStmt(const CreateUserMappingStmt *from)
Definition: copyfuncs.c:4140
static A_Indices * _copyAIndices(const A_Indices *from)
Definition: copyfuncs.c:2654
static VacuumStmt * _copyVacuumStmt(const VacuumStmt *from)
Definition: copyfuncs.c:3860
static VacuumRelation * _copyVacuumRelation(const VacuumRelation *from)
Definition: copyfuncs.c:3872
static RangeTblRef * _copyRangeTblRef(const RangeTblRef *from)
Definition: copyfuncs.c:2141
static TableFuncScan * _copyTableFuncScan(const TableFuncScan *from)
Definition: copyfuncs.c:635
static WorkTableScan * _copyWorkTableScan(const WorkTableScan *from)
Definition: copyfuncs.c:720
static FieldStore * _copyFieldStore(const FieldStore *from)
Definition: copyfuncs.c:1724
static ForeignScan * _copyForeignScan(const ForeignScan *from)
Definition: copyfuncs.c:741
static CurrentOfExpr * _copyCurrentOfExpr(const CurrentOfExpr *from)
Definition: copyfuncs.c:2078
static SetOp * _copySetOp(const SetOp *from)
Definition: copyfuncs.c:1081
static ForeignKeyCacheInfo * _copyForeignKeyCacheInfo(const ForeignKeyCacheInfo *from)
Definition: copyfuncs.c:4717
static AlterOwnerStmt * _copyAlterOwnerStmt(const AlterOwnerStmt *from)
Definition: copyfuncs.c:3591