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_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_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_ArrayRef, 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_ResultPath, 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_PlaceHolderVar, T_SpecialJoinInfo,
  T_AppendRelInfo, T_PartitionedChildRelInfo, T_PlaceHolderInfo, T_MinMaxAggInfo,
  T_PlannerParamItem, T_RollupData, T_GroupingSetData, T_StatisticExtInfo,
  T_MemoryContext, T_AllocSetContext, T_SlabContext, 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_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_TsmRoutine, T_ForeignKeyCacheInfo
}
 
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 (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 752 of file nodes.h.

◆ AGGSPLITOP_DESERIALIZE

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

Definition at line 755 of file nodes.h.

◆ AGGSPLITOP_SERIALIZE

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

Definition at line 754 of file nodes.h.

◆ AGGSPLITOP_SKIPFINAL

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

Definition at line 753 of file nodes.h.

◆ castNode

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

Definition at line 579 of file nodes.h.

Referenced by adjust_view_column_set(), ATExecAddIdentity(), ATExecAlterConstraint(), ATExecSetIdentity(), ATExecSetOptions(), ATPostAlterTypeParse(), ATRewriteCatalogs(), check_new_partition_bound(), check_object_ownership(), ComputePartitionAttrs(), conversion_error_callback(), create_bitmap_subplan(), create_customscan_plan(), 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(), ExecHashJoin(), ExecIndexOnlyScan(), ExecIndexScan(), ExecInitAgg(), ExecInitCteScan(), ExecInitCustomScan(), ExecInitModifyTable(), 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(), interval_transform(), is_converted_whole_row_reference(), is_simple_union_all(), JumbleExpr(), make_one_range_bound(), make_row_comparison_op(), make_subplan(), match_expr_to_partition_keys(), numeric_transform(), PerformCursorOpen(), pg_get_function_arg_default(), plan_set_operations(), plpgsql_inline_handler(), print_function_arguments(), ProcedureCreate(), ProcessCopyOptions(), query_is_distinct_for(), rel_is_distinct_for(), RelationBuildPartitionDesc(), RemoveObjects(), RenameConstraint(), RenameType(), RewriteQuery(), ScanQueryForLocks(), ScanQueryWalker(), setRuleCheckAsUser_Query(), ShutdownSetExpr(), SlabAlloc(), SlabFree(), SlabGetChunkSpace(), SlabInit(), SlabIsEmpty(), SlabRealloc(), SlabReset(), SlabStats(), subquery_is_pushdown_safe(), TemporalTransform(), transformAExprBetween(), transformAExprOp(), transformAlterTableStmt(), transformFromClauseItem(), transformMultiAssignRef(), transformPartitionBound(), transformPartitionSpec(), transformSetOperationStmt(), unique_key_recheck(), UtilityContainsQuery(), validateInfiniteBounds(), varbit_transform(), and varchar_transform().

◆ copyObject

#define copyObject (   obj)    copyObjectImpl(obj)

Definition at line 623 of file nodes.h.

Referenced by add_placeholders_to_base_rels(), add_security_quals(), add_to_flat_tlist(), add_vars_to_targetlist(), add_with_check_options(), AddQual(), addRangeTableEntryForCTE(), addRangeTableEntryForJoin(), addRangeTableEntryForSubquery(), addRangeTableEntryForTableFunc(), addRangeTableEntryForValues(), adjust_appendrel_attrs_mutator(), adjust_rowcompare_for_index(), adjustJoinTreeList(), AlterPolicy(), analyzeCTETargetList(), ApplyRetrieveRule(), assign_param_for_placeholdervar(), assign_param_for_var(), ATAddCheckConstraint(), ATExecAddColumn(), ATPrepAlterColumnType(), ATPrepCmd(), BeginCopy(), build_implied_join_equality(), build_minmax_path(), BuildCachedPlan(), CompleteCachedPlan(), compute_semijoin_info(), convert_combining_aggrefs(), convert_EXISTS_sublink_to_join(), convert_testexpr_mutator(), ConvertTriggerToFK(), copy_partition_key(), CopyAndAddInvertedQual(), CopyCachedPlan(), create_ctas_internal(), create_scan_plan(), CreateCachedPlan(), CreatePolicy(), CreateTrigger(), DefineView(), eval_const_expressions_mutator(), EvaluateParams(), EventTriggerAlterTableStart(), EventTriggerCollectAlterDefPrivs(), EventTriggerCollectAlterOpFam(), EventTriggerCollectAlterTableSubcmd(), EventTriggerCollectAlterTSConfig(), EventTriggerCollectCreateOpClass(), EventTriggerCollectGrant(), EventTriggerCollectSimpleCommand(), ExecCreateTableAs(), ExecSerializePlan(), expand_single_inheritance_child(), ExpandIndirectionStar(), ExpandRowReference(), ExplainOneUtility(), ExplainQuery(), expression_tree_mutator(), extract_lateral_references(), FetchPreparedStatementTargetList(), find_placeholder_info(), 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_cast_hashentry(), get_eclass_for_sort_expr(), get_qual_for_hash(), get_qual_for_list(), get_range_key_properties(), get_range_nulltest(), grouping_planner(), index_register(), inheritance_planner(), inline_function(), inline_set_returning_function(), make_subplan(), PerformCursorOpen(), pg_parse_query(), pg_plan_query(), pg_rewrite_query(), 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(), RelationBuildRowSecurity(), RelationGetFKeyList(), RelationGetIndexExpressions(), RelationGetIndexPredicate(), replace_domain_constraint_value(), 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(), split_pathtarget_at_srfs(), 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(), 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 772 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 771 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 561 of file nodes.h.

Referenced by _int_matchsel(), _outList(), _SPI_execute_plan(), accumulate_append_subpath(), acquireLocksOnSubLinks(), AcquireRewriteLocks(), add_base_rels_to_query(), add_path(), add_placeholders_to_child_joinrel(), 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(), and_clause(), appendConditions(), apply_pathtarget_labeling_to_tlist(), apply_projection_to_path(), 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_subplan(), build_tlist_index(), build_tlist_index_other_vars(), buildMergedJoinVar(), canonicalize_ec_expression(), ChangeVarNodes(), ChangeVarNodes_walker(), check_agg_arguments_walker(), check_agglevels_and_constraints(), check_constant_qual(), check_functional_grouping(), check_parameter_resolution_walker(), check_ungrouped_columns_walker(), checkExprHasSubLink_walker(), checkWellFormedRecursion(), checkWellFormedRecursionWalker(), ChoosePortalStrategy(), chooseScalarFunctionAlias(), clause_selectivity(), clauselist_selectivity(), coerce_record_to_complex(), coerce_to_target_type(), coerce_type(), CommandIsReadOnly(), CommuteRowCompareExpr(), 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_mutable_functions_walker(), contain_nonstrict_functions_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_hashjoin_plan(), create_lateral_join_info(), create_nestloop_plan(), create_plan(), create_plan_recurse(), createdb(), CreateStatistics(), crosstab(), crosstab_hash(), currtid_for_view(), deconstruct_indexquals(), deconstruct_jointree(), deconstruct_recurse(), defGetStringList(), DefineDomain(), DefineView(), deflist_to_tuplestore(), deparseArrayRef(), deparseSortGroupClause(), dependency_is_compatible_clause(), determineRecursiveColTypes(), each_worker(), each_worker_jsonb(), 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(), ExecBuildProjectionInfo(), ExecCheckPlanOutput(), ExecCreateTableAs(), ExecDropSingleTupleTableSlot(), ExecIndexBuildScanKeys(), ExecInitCheck(), ExecInitExprRec(), ExecInitFunc(), ExecInitFunctionResultSet(), ExecInitMergeJoin(), ExecInitNode(), ExecInitProjectSet(), ExecInitQual(), ExecInitSubPlan(), ExecInitTableFunctionResult(), ExecNestLoop(), ExecParallelRetrieveInstrumentation(), ExecProjectSRF(), ExecScanReScan(), ExecSetTupleBound(), ExecSupportsMarkRestore(), execute_sql_string(), expand_boolean_index_clause(), expand_function_arguments(), expand_indexqual_conditions(), 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_duplicate_ors(), find_ec_member_for_tle(), 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_window_functions_walker(), findTargetlistEntrySQL92(), fireRIRonSubLink(), fix_expr_common(), fix_indexorderby_references(), fix_indexqual_operand(), fix_indexqual_references(), 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(), generate_base_implied_equalities_const(), generate_join_implied_equalities_normal(), generate_partition_wise_join_paths(), 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_qual_for_range(), get_relids_in_jointree(), get_rule_expr(), get_rule_expr_toplevel(), get_rule_sortgroupclause(), get_select_query_def(), get_setop_query(), 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(), GetTsmRoutine(), gincost_opexpr(), gincost_scalararrayopexpr(), gincostestimate(), has_dangerous_join_using(), has_indexed_join_quals(), hide_coercion_node(), identify_join_columns(), ImportForeignSchema(), IncrementVarSublevelsUp_walker(), infer_arbiter_indexes(), infer_collation_opclass_match(), init_execution_state(), init_MultiFuncCall(), inline_function(), inline_set_returning_function(), internal_get_result_type(), interval_transform(), is_converted_whole_row_reference(), is_dummy_plan(), is_safe_append_member(), is_simple_subquery(), is_simple_union_all(), is_simple_union_all_recurse(), is_strict_saop(), isAssignmentIndirectionExpr(), isQueryUsingTempRelation_walker(), isSimpleNode(), IsTidEqualAnyClause(), IsTidEqualClause(), IsTransactionExitStmt(), IsTransactionStmtList(), jointree_contains_lateral_outer_refs(), JumbleQuery(), limit_needed(), list_member_strip(), locate_agg_of_level_walker(), locate_var_of_level_walker(), locate_windowfunc_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_clause_to_indexcol(), match_eclasses_to_foreign_key_col(), match_expr_to_partition_keys(), match_foreign_keys_to_quals(), match_index_to_operand(), match_special_index_operator(), max_parallel_hazard_walker(), MJExamineQuals(), MultiExecBitmapAnd(), MultiExecBitmapOr(), NameListToString(), networksel(), not_clause(), numeric_transform(), OffsetVarNodes(), OffsetVarNodes_walker(), operator_precedence_group(), operator_predicate_proof(), or_clause(), order_qual_clauses(), orderby_operands_eval_cost(), outNode(), parse_output_parameters(), parseCheckAggregates(), ParseComplexProjection(), ParseFuncOrColumn(), patternsel(), 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(), plperl_func_handler(), plpgsql_exec_function(), pltcl_func_handler(), PLy_exec_function(), populate_recordset_worker(), PortalRunMulti(), PortalRunUtility(), 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_up_sublinks(), pull_up_sublinks_jointree_recurse(), pull_up_sublinks_qual_recurse(), pull_up_subqueries(), pull_up_subqueries_cleanup(), 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_tree_mutator(), query_tree_walker(), rangesel(), rangeTableEntry_used_walker(), RangeVarCallbackForAlterRelation(), reconsider_full_join_clause(), recurse_push_qual(), recurse_pushdown_safe(), recurse_set_operations(), recurse_union_children(), reduce_outer_joins_pass1(), reduce_outer_joins_pass2(), rel_is_distinct_for(), relabel_to_typmod(), relation_excluded_by_constraints(), remove_rel_from_joinlist(), remove_useless_groupby_columns(), reorder_function_arguments(), 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_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(), strip_array_coercion(), strip_implicit_coercions(), substitute_actual_parameters_mutator(), substitute_actual_srf_parameters_mutator(), substitute_multiple_relids_walker(), system_rows_samplescangetsamplesize(), system_samplescangetsamplesize(), system_time_samplescangetsamplesize(), TemporalTransform(), testexpr_is_hashable(), TidExprListCreate(), TidQualFromExpr(), 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(), 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_transform(), varchar_transform(), 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 558 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(), _copyArrayRef(), _copyAStar(), _copyBitmapAnd(), _copyBitmapHeapScan(), _copyBitmapIndexScan(), _copyBitmapOr(), _copyBooleanTest(), _copyBoolExpr(), _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(), _copyList(), _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(), _copyPartitionedChildRelInfo(), _copyPartitionElem(), _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(), _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(), adjust_rowcompare_for_index(), AlterTableMoveAll(), applyLockingClause(), assign_nestloop_param_placeholdervar(), assign_nestloop_param_var(), assign_param_for_placeholdervar(), assign_param_for_var(), ATPostAlterTypeParse(), ATPrepAddOids(), ATPrepCmd(), blhandler(), brinhandler(), bthandler(), build_child_join_rel(), build_child_join_sjinfo(), build_coercion_expression(), build_empty_join_rel(), build_join_rel(), build_minmax_path(), build_simple_rel(), build_subplan(), BuildIndexInfo(), buildMergedJoinVar(), CatalogOpenIndexes(), CheckIndexCompatible(), checkInsertTargets(), coerce_record_to_complex(), coerce_to_domain(), coerce_to_target_type(), coerce_type(), 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_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_foreignscan_path(), create_functionscan_path(), create_gather_merge_path(), create_gather_merge_plan(), create_gather_path(), create_group_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_result_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(), createForeignKeyTriggers(), CreateSchemaCommand(), CreateStandaloneExprContext(), DefineCompositeType(), DefineIndex(), DefineSequence(), DefineView(), DefineVirtualRelation(), deparse_context_for(), DoCopy(), domainAddConstraint(), eval_const_expressions_mutator(), evaluate_function(), ExecBuildProjectionInfo(), ExecGetTriggerResultRel(), ExecInitAgg(), ExecInitAlternativeSubPlan(), ExecInitAppend(), ExecInitBitmapAnd(), ExecInitBitmapHeapScan(), ExecInitBitmapIndexScan(), ExecInitBitmapOr(), ExecInitCteScan(), ExecInitExpr(), ExecInitExprRec(), ExecInitForeignScan(), ExecInitFunctionResultSet(), ExecInitFunctionScan(), ExecInitGather(), ExecInitGatherMerge(), ExecInitGroup(), ExecInitHash(), ExecInitHashJoin(), ExecInitIndexOnlyScan(), ExecInitIndexScan(), ExecInitJunkFilter(), ExecInitJunkFilterConversion(), ExecInitLimit(), ExecInitLockRows(), ExecInitMaterial(), ExecInitMergeAppend(), ExecInitMergeJoin(), ExecInitModifyTable(), ExecInitNamedTuplestoreScan(), ExecInitNestLoop(), ExecInitProjectSet(), ExecInitQual(), ExecInitRecursiveUnion(), ExecInitResult(), ExecInitSampleScan(), ExecInitSeqScan(), ExecInitSetOp(), ExecInitSort(), ExecInitSubPlan(), ExecInitSubqueryScan(), ExecInitTableFuncScan(), ExecInitTableFunctionResult(), ExecInitTidScan(), ExecInitUnique(), ExecInitValuesScan(), ExecInitWindowAgg(), ExecInitWorkTableScan(), ExecSerializePlan(), ExecuteDoStmt(), expand_inherited_rtentry(), 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(), generate_new_param(), generateClonedIndexStmt(), generateSerialExtraStmts(), get_appendrel_parampathinfo(), get_baserel_parampathinfo(), get_cast_hashentry(), get_eclass_for_sort_expr(), 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_check_primary_key(), index_constraint_create(), inheritance_planner(), init_execution_state(), inline_function(), intorel_startup(), load_domaintype_info(), make_agg(), make_agg_arg(), make_andclause(), make_append(), 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_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(), MakeTupleTableSlot(), makeTypeNameFromNameList(), makeTypeNameFromOid(), makeVacuumRelation(), makeVar(), map_variable_attnos_mutator(), match_clause_to_ordering_op(), MergeAttributes(), negate_clause(), parseCheckAggregates(), ParseComplexProjection(), ParseFuncOrColumn(), PartConstraintImpliedByRelConstraint(), pg_get_object_address(), pg_get_triggerdef_worker(), pg_plan_queries(), plan_cluster_use_sort(), 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_union_leaf_queries(), pullup_replace_vars_callback(), RebuildConstraintComment(), record_plan_function_dependency(), RelationGetFKeyList(), reorder_grouping_sets(), reparameterize_path(), reparameterize_path_by_child(), replace_nestloop_params_mutator(), replace_outer_agg(), replace_outer_grouping(), replace_outer_placeholdervar(), replace_outer_var(), ReplaceVarsFromTargetList_callback(), resolve_unique_index_expr(), rewriteTargetListIU(), 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(), transformArraySubscripts(), transformAssignmentIndirection(), transformCaseExpr(), transformCoalesceExpr(), transformCollateClause(), transformColumnDefinition(), transformCreateTableAsStmt(), transformCurrentOfExpr(), transformDeclareCursorStmt(), transformDeleteStmt(), transformExplainStmt(), transformFKConstraints(), transformFromClauseItem(), transformGroupingFunc(), transformIndexConstraint(), transformInsertStmt(), transformLockingClause(), transformMinMaxExpr(), transformMultiAssignRef(), transformOfType(), transformOnConflictClause(), transformOptionalSelectInto(), 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:510
#define palloc0fast(sz)
Definition: palloc.h:91
PGDLLIMPORT Node * newNodeMacroHolder
Definition: nodes.c:31

Definition at line 548 of file nodes.h.

Referenced by _copyExtensibleNode(), and _readExtensibleNode().

◆ NodeSetTag

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

Definition at line 559 of file nodes.h.

Referenced by make_distinct_op(), and transformAExprNullIf().

◆ nodeTag

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

Definition at line 515 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(), 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_indexquals(), 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(), ExecReScan(), ExecRestrPos(), ExecScanReScan(), ExecSetVariableStmt(), ExecShutdownNode(), ExecSupportsBackwardScan(), expand_indexqual_conditions(), 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_indexorderby_references(), fix_indexqual_references(), flatten_join_using_qual(), flatten_set_variable_args(), foreign_expr_walker(), generate_partition_wise_join_paths(), get_bitmap_tree_required_outer(), get_from_clause_item(), get_indexpath_pages(), 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(), 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(), orderby_operands_eval_cost(), outNode(), pg_get_partkeydef_worker(), planstate_tree_walker(), preprocess_qual_conditions(), ProcessUtilitySlow(), pull_up_sublinks_jointree_recurse(), pull_up_subqueries_cleanup(), 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(), 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 641 of file nodes.h.

◆ JoinType

◆ Node

typedef struct Node Node

◆ NodeTag

◆ OnConflictAction

◆ Selectivity

Definition at line 640 of file nodes.h.

◆ SetOpCmd

◆ SetOpStrategy

Enumeration Type Documentation

◆ AggSplit

enum AggSplit
Enumerator
AGGSPLIT_SIMPLE 
AGGSPLIT_INITIAL_SERIAL 
AGGSPLIT_FINAL_DESERIAL 

Definition at line 758 of file nodes.h.

759 {
760  /* Basic, non-split aggregation: */
761  AGGSPLIT_SIMPLE = 0,
762  /* Initial phase of partial aggregation, with serialization: */
764  /* Final phase of partial aggregation, with deserialization: */
766 } AggSplit;
#define AGGSPLITOP_DESERIALIZE
Definition: nodes.h:755
#define AGGSPLITOP_COMBINE
Definition: nodes.h:752
#define AGGSPLITOP_SERIALIZE
Definition: nodes.h:754
AggSplit
Definition: nodes.h:758
#define AGGSPLITOP_SKIPFINAL
Definition: nodes.h:753

◆ AggStrategy

Enumerator
AGG_PLAIN 
AGG_SORTED 
AGG_HASHED 
AGG_MIXED 

Definition at line 736 of file nodes.h.

737 {
738  AGG_PLAIN, /* simple agg across all input rows */
739  AGG_SORTED, /* grouped agg, input must be sorted */
740  AGG_HASHED, /* grouped agg, use internal hashtable */
741  AGG_MIXED /* grouped agg, hash and sort both used */
742 } AggStrategy;
AggStrategy
Definition: nodes.h:736

◆ CmdType

enum CmdType
Enumerator
CMD_UNKNOWN 
CMD_SELECT 
CMD_UPDATE 
CMD_INSERT 
CMD_DELETE 
CMD_UTILITY 
CMD_NOTHING 

Definition at line 650 of file nodes.h.

651 {
652  CMD_UNKNOWN,
653  CMD_SELECT, /* select stmt */
654  CMD_UPDATE, /* update stmt */
655  CMD_INSERT, /* insert stmt */
656  CMD_DELETE,
657  CMD_UTILITY, /* cmds like create, destroy, copy, vacuum,
658  * etc. */
659  CMD_NOTHING /* dummy command for instead nothing rules
660  * with qual */
661 } CmdType;
CmdType
Definition: nodes.h:650

◆ 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 674 of file nodes.h.

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

◆ NodeTag

enum NodeTag
Enumerator
T_Invalid 
T_IndexInfo 
T_ExprContext 
T_ProjectionInfo 
T_JunkFilter 
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_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_ArrayRef 
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_ResultPath 
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_PlaceHolderVar 
T_SpecialJoinInfo 
T_AppendRelInfo 
T_PartitionedChildRelInfo 
T_PlaceHolderInfo 
T_MinMaxAggInfo 
T_PlannerParamItem 
T_RollupData 
T_GroupingSetData 
T_StatisticExtInfo 
T_MemoryContext 
T_AllocSetContext 
T_SlabContext 
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_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_TsmRoutine 
T_ForeignKeyCacheInfo 

Definition at line 26 of file nodes.h.

27 {
28  T_Invalid = 0,
29 
30  /*
31  * TAGS FOR EXECUTOR NODES (execnodes.h)
32  */
38  T_EState,
40 
41  /*
42  * TAGS FOR PLAN NODES (plannodes.h)
43  */
44  T_Plan,
45  T_Result,
48  T_Append,
52  T_BitmapOr,
53  T_Scan,
54  T_SeqScan,
60  T_TidScan,
65  T_CteScan,
70  T_Join,
71  T_NestLoop,
73  T_HashJoin,
74  T_Material,
75  T_Sort,
76  T_Group,
77  T_Agg,
79  T_Unique,
80  T_Gather,
82  T_Hash,
83  T_SetOp,
84  T_LockRows,
85  T_Limit,
86  /* these aren't subclasses of Plan: */
90 
91  /*
92  * TAGS FOR PLAN STATE NODES (execnodes.h)
93  *
94  * These should correspond one-to-one with Plan node types.
95  */
105  T_ScanState,
122  T_JoinState,
127  T_SortState,
128  T_GroupState,
129  T_AggState,
134  T_HashState,
135  T_SetOpState,
137  T_LimitState,
138 
139  /*
140  * TAGS FOR PRIMITIVE NODES (primnodes.h)
141  */
142  T_Alias,
143  T_RangeVar,
144  T_TableFunc,
145  T_Expr,
146  T_Var,
147  T_Const,
148  T_Param,
149  T_Aggref,
151  T_WindowFunc,
152  T_ArrayRef,
153  T_FuncExpr,
155  T_OpExpr,
157  T_NullIfExpr,
159  T_BoolExpr,
160  T_SubLink,
161  T_SubPlan,
164  T_FieldStore,
170  T_CaseExpr,
171  T_CaseWhen,
173  T_ArrayExpr,
174  T_RowExpr,
177  T_MinMaxExpr,
179  T_XmlExpr,
180  T_NullTest,
190  T_JoinExpr,
191  T_FromExpr,
193  T_IntoClause,
194 
195  /*
196  * TAGS FOR EXPRESSION STATE NODES (execnodes.h)
197  *
198  * ExprState represents the evaluation state for a whole expression tree.
199  * Most Expr-based plan nodes do not have a corresponding expression state
200  * node, they're fully handled within execExpr* - but sometimes the state
201  * needs to be shared with other parts of the executor, as for example
202  * with AggrefExprState, which nodeAgg.c has to modify.
203  */
204  T_ExprState,
211 
212  /*
213  * TAGS FOR PLANNER NODES (relation.h)
214  */
217  T_RelOptInfo,
221  T_Path,
222  T_IndexPath,
226  T_TidPath,
229  T_CustomPath,
230  T_NestPath,
231  T_MergePath,
232  T_HashPath,
233  T_AppendPath,
235  T_ResultPath,
237  T_UniquePath,
238  T_GatherPath,
242  T_SortPath,
243  T_GroupPath,
245  T_AggPath,
249  T_SetOpPath,
253  T_LimitPath,
254  /* these aren't subclasses of Path: */
257  T_PathKey,
258  T_PathTarget,
267  T_RollupData,
270 
271  /*
272  * TAGS FOR MEMORY NODES (memnodes.h)
273  */
277 
278  /*
279  * TAGS FOR VALUE NODES (value.h)
280  */
281  T_Value,
282  T_Integer,
283  T_Float,
284  T_String,
285  T_BitString,
286  T_Null,
287 
288  /*
289  * TAGS FOR LIST NODES (pg_list.h)
290  */
291  T_List,
292  T_IntList,
293  T_OidList,
294 
295  /*
296  * TAGS FOR EXTENSIBLE NODES (extensible.h)
297  */
299 
300  /*
301  * TAGS FOR STATEMENT NODES (mostly in parsenodes.h)
302  */
303  T_RawStmt,
304  T_Query,
306  T_InsertStmt,
307  T_DeleteStmt,
308  T_UpdateStmt,
309  T_SelectStmt,
314  T_GrantStmt,
319  T_CopyStmt,
320  T_CreateStmt,
321  T_DefineStmt,
322  T_DropStmt,
325  T_FetchStmt,
326  T_IndexStmt,
329  T_DoStmt,
330  T_RenameStmt,
331  T_RuleStmt,
332  T_NotifyStmt,
333  T_ListenStmt,
336  T_ViewStmt,
337  T_LoadStmt,
340  T_DropdbStmt,
341  T_VacuumStmt,
354  T_LockStmt,
416 
417  /*
418  * TAGS FOR PARSE TREE NODES (parsenodes.h)
419  */
420  T_A_Expr,
421  T_ColumnRef,
422  T_ParamRef,
423  T_A_Const,
424  T_FuncCall,
425  T_A_Star,
426  T_A_Indices,
429  T_ResTarget,
431  T_TypeCast,
433  T_SortBy,
434  T_WindowDef,
440  T_TypeName,
441  T_ColumnDef,
442  T_IndexElem,
443  T_Constraint,
444  T_DefElem,
453  T_AccessPriv,
460  T_WithClause,
464  T_RoleSpec,
472 
473  /*
474  * TAGS FOR REPLICATION GRAMMAR PARSE NODES (replnodes.h)
475  */
482  T_SQLCmd,
483 
484  /*
485  * TAGS FOR RANDOM OTHER STUFF
486  *
487  * These are objects that aren't part of parse/plan/execute node tree
488  * structures, but we give them NodeTags anyway for identification
489  * purposes (usually because they are involved in APIs where we want to
490  * pass multiple object types through the same pointer).
491  */
492  T_TriggerData, /* in commands/trigger.h */
493  T_EventTriggerData, /* in commands/event_trigger.h */
494  T_ReturnSetInfo, /* in nodes/execnodes.h */
495  T_WindowObjectData, /* private in nodeWindowAgg.c */
496  T_TIDBitmap, /* in nodes/tidbitmap.h */
497  T_InlineCodeBlock, /* in nodes/parsenodes.h */
498  T_FdwRoutine, /* in foreign/fdwapi.h */
499  T_IndexAmRoutine, /* in access/amapi.h */
500  T_TsmRoutine, /* in access/tsmapi.h */
501  T_ForeignKeyCacheInfo /* in utils/rel.h */
502 } NodeTag;
Definition: nodes.h:77
Definition: nodes.h:79
Definition: nodes.h:53
Definition: nodes.h:48
Definition: nodes.h:75
NodeTag
Definition: nodes.h:26
Definition: nodes.h:45
Definition: nodes.h:145
Definition: nodes.h:76
Definition: nodes.h:142
Definition: nodes.h:291
Definition: nodes.h:147
Definition: nodes.h:146
Definition: nodes.h:304
Definition: nodes.h:82
Definition: nodes.h:281
Definition: nodes.h:44
Definition: nodes.h:70
Definition: nodes.h:286
Definition: nodes.h:83
Definition: nodes.h:283
Definition: nodes.h:80
Definition: nodes.h:221
Definition: nodes.h:38
Definition: nodes.h:148
Definition: nodes.h:85

◆ OnConflictAction

Enumerator
ONCONFLICT_NONE 
ONCONFLICT_NOTHING 
ONCONFLICT_UPDATE 

Definition at line 800 of file nodes.h.

801 {
802  ONCONFLICT_NONE, /* No "ON CONFLICT" clause */
803  ONCONFLICT_NOTHING, /* ON CONFLICT ... DO NOTHING */
804  ONCONFLICT_UPDATE /* ON CONFLICT ... DO UPDATE */
OnConflictAction
Definition: nodes.h:800

◆ SetOpCmd

enum SetOpCmd
Enumerator
SETOPCMD_INTERSECT 
SETOPCMD_INTERSECT_ALL 
SETOPCMD_EXCEPT 
SETOPCMD_EXCEPT_ALL 

Definition at line 780 of file nodes.h.

◆ SetOpStrategy

Enumerator
SETOP_SORTED 
SETOP_HASHED 

Definition at line 788 of file nodes.h.

789 {
790  SETOP_SORTED, /* input must be sorted */
791  SETOP_HASHED /* use internal hashtable */
792 } SetOpStrategy;
SetOpStrategy
Definition: nodes.h:788

Function Documentation

◆ bmsToString()

char* bmsToString ( const struct Bitmapset bms)

◆ copyObjectImpl()

void* copyObjectImpl ( const void *  obj)

Definition at line 4686 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(), _copyArrayRef(), _copyAStar(), _copyBitmapAnd(), _copyBitmapHeapScan(), _copyBitmapIndexScan(), _copyBitmapOr(), _copyBooleanTest(), _copyBoolExpr(), _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(), _copyList(), _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(), _copyPartitionedChildRelInfo(), _copyPartitionElem(), _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(), _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(), 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_ArrayRef, T_BitmapAnd, T_BitmapHeapScan, T_BitmapIndexScan, T_BitmapOr, T_BitString, T_BooleanTest, T_BoolExpr, 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_PartitionedChildRelInfo, T_PartitionElem, 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_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.

4687 {
4688  void *retval;
4689 
4690  if (from == NULL)
4691  return NULL;
4692 
4693  /* Guard against stack overflow due to overly complex expressions */
4695 
4696  switch (nodeTag(from))
4697  {
4698  /*
4699  * PLAN NODES
4700  */
4701  case T_PlannedStmt:
4702  retval = _copyPlannedStmt(from);
4703  break;
4704  case T_Plan:
4705  retval = _copyPlan(from);
4706  break;
4707  case T_Result:
4708  retval = _copyResult(from);
4709  break;
4710  case T_ProjectSet:
4711  retval = _copyProjectSet(from);
4712  break;
4713  case T_ModifyTable:
4714  retval = _copyModifyTable(from);
4715  break;
4716  case T_Append:
4717  retval = _copyAppend(from);
4718  break;
4719  case T_MergeAppend:
4720  retval = _copyMergeAppend(from);
4721  break;
4722  case T_RecursiveUnion:
4723  retval = _copyRecursiveUnion(from);
4724  break;
4725  case T_BitmapAnd:
4726  retval = _copyBitmapAnd(from);
4727  break;
4728  case T_BitmapOr:
4729  retval = _copyBitmapOr(from);
4730  break;
4731  case T_Scan:
4732  retval = _copyScan(from);
4733  break;
4734  case T_Gather:
4735  retval = _copyGather(from);
4736  break;
4737  case T_GatherMerge:
4738  retval = _copyGatherMerge(from);
4739  break;
4740  case T_SeqScan:
4741  retval = _copySeqScan(from);
4742  break;
4743  case T_SampleScan:
4744  retval = _copySampleScan(from);
4745  break;
4746  case T_IndexScan:
4747  retval = _copyIndexScan(from);
4748  break;
4749  case T_IndexOnlyScan:
4750  retval = _copyIndexOnlyScan(from);
4751  break;
4752  case T_BitmapIndexScan:
4753  retval = _copyBitmapIndexScan(from);
4754  break;
4755  case T_BitmapHeapScan:
4756  retval = _copyBitmapHeapScan(from);
4757  break;
4758  case T_TidScan:
4759  retval = _copyTidScan(from);
4760  break;
4761  case T_SubqueryScan:
4762  retval = _copySubqueryScan(from);
4763  break;
4764  case T_FunctionScan:
4765  retval = _copyFunctionScan(from);
4766  break;
4767  case T_TableFuncScan:
4768  retval = _copyTableFuncScan(from);
4769  break;
4770  case T_ValuesScan:
4771  retval = _copyValuesScan(from);
4772  break;
4773  case T_CteScan:
4774  retval = _copyCteScan(from);
4775  break;
4776  case T_NamedTuplestoreScan:
4777  retval = _copyNamedTuplestoreScan(from);
4778  break;
4779  case T_WorkTableScan:
4780  retval = _copyWorkTableScan(from);
4781  break;
4782  case T_ForeignScan:
4783  retval = _copyForeignScan(from);
4784  break;
4785  case T_CustomScan:
4786  retval = _copyCustomScan(from);
4787  break;
4788  case T_Join:
4789  retval = _copyJoin(from);
4790  break;
4791  case T_NestLoop:
4792  retval = _copyNestLoop(from);
4793  break;
4794  case T_MergeJoin:
4795  retval = _copyMergeJoin(from);
4796  break;
4797  case T_HashJoin:
4798  retval = _copyHashJoin(from);
4799  break;
4800  case T_Material:
4801  retval = _copyMaterial(from);
4802  break;
4803  case T_Sort:
4804  retval = _copySort(from);
4805  break;
4806  case T_Group:
4807  retval = _copyGroup(from);
4808  break;
4809  case T_Agg:
4810  retval = _copyAgg(from);
4811  break;
4812  case T_WindowAgg:
4813  retval = _copyWindowAgg(from);
4814  break;
4815  case T_Unique:
4816  retval = _copyUnique(from);
4817  break;
4818  case T_Hash:
4819  retval = _copyHash(from);
4820  break;
4821  case T_SetOp:
4822  retval = _copySetOp(from);
4823  break;
4824  case T_LockRows:
4825  retval = _copyLockRows(from);
4826  break;
4827  case T_Limit:
4828  retval = _copyLimit(from);
4829  break;
4830  case T_NestLoopParam:
4831  retval = _copyNestLoopParam(from);
4832  break;
4833  case T_PlanRowMark:
4834  retval = _copyPlanRowMark(from);
4835  break;
4836  case T_PlanInvalItem:
4837  retval = _copyPlanInvalItem(from);
4838  break;
4839 
4840  /*
4841  * PRIMITIVE NODES
4842  */
4843  case T_Alias:
4844  retval = _copyAlias(from);
4845  break;
4846  case T_RangeVar:
4847  retval = _copyRangeVar(from);
4848  break;
4849  case T_TableFunc:
4850  retval = _copyTableFunc(from);
4851  break;
4852  case T_IntoClause:
4853  retval = _copyIntoClause(from);
4854  break;
4855  case T_Var:
4856  retval = _copyVar(from);
4857  break;
4858  case T_Const:
4859  retval = _copyConst(from);
4860  break;
4861  case T_Param:
4862  retval = _copyParam(from);
4863  break;
4864  case T_Aggref:
4865  retval = _copyAggref(from);
4866  break;
4867  case T_GroupingFunc:
4868  retval = _copyGroupingFunc(from);
4869  break;
4870  case T_WindowFunc:
4871  retval = _copyWindowFunc(from);
4872  break;
4873  case T_ArrayRef:
4874  retval = _copyArrayRef(from);
4875  break;
4876  case T_FuncExpr:
4877  retval = _copyFuncExpr(from);
4878  break;
4879  case T_NamedArgExpr:
4880  retval = _copyNamedArgExpr(from);
4881  break;
4882  case T_OpExpr:
4883  retval = _copyOpExpr(from);
4884  break;
4885  case T_DistinctExpr:
4886  retval = _copyDistinctExpr(from);
4887  break;
4888  case T_NullIfExpr:
4889  retval = _copyNullIfExpr(from);
4890  break;
4891  case T_ScalarArrayOpExpr:
4892  retval = _copyScalarArrayOpExpr(from);
4893  break;
4894  case T_BoolExpr:
4895  retval = _copyBoolExpr(from);
4896  break;
4897  case T_SubLink:
4898  retval = _copySubLink(from);
4899  break;
4900  case T_SubPlan:
4901  retval = _copySubPlan(from);
4902  break;
4903  case T_AlternativeSubPlan:
4904  retval = _copyAlternativeSubPlan(from);
4905  break;
4906  case T_FieldSelect:
4907  retval = _copyFieldSelect(from);
4908  break;
4909  case T_FieldStore:
4910  retval = _copyFieldStore(from);
4911  break;
4912  case T_RelabelType:
4913  retval = _copyRelabelType(from);
4914  break;
4915  case T_CoerceViaIO:
4916  retval = _copyCoerceViaIO(from);
4917  break;
4918  case T_ArrayCoerceExpr:
4919  retval = _copyArrayCoerceExpr(from);
4920  break;
4921  case T_ConvertRowtypeExpr:
4922  retval = _copyConvertRowtypeExpr(from);
4923  break;
4924  case T_CollateExpr:
4925  retval = _copyCollateExpr(from);
4926  break;
4927  case T_CaseExpr:
4928  retval = _copyCaseExpr(from);
4929  break;
4930  case T_CaseWhen:
4931  retval = _copyCaseWhen(from);
4932  break;
4933  case T_CaseTestExpr:
4934  retval = _copyCaseTestExpr(from);
4935  break;
4936  case T_ArrayExpr:
4937  retval = _copyArrayExpr(from);
4938  break;
4939  case T_RowExpr:
4940  retval = _copyRowExpr(from);
4941  break;
4942  case T_RowCompareExpr:
4943  retval = _copyRowCompareExpr(from);
4944  break;
4945  case T_CoalesceExpr:
4946  retval = _copyCoalesceExpr(from);
4947  break;
4948  case T_MinMaxExpr:
4949  retval = _copyMinMaxExpr(from);
4950  break;
4951  case T_SQLValueFunction:
4952  retval = _copySQLValueFunction(from);
4953  break;
4954  case T_XmlExpr:
4955  retval = _copyXmlExpr(from);
4956  break;
4957  case T_NullTest:
4958  retval = _copyNullTest(from);
4959  break;
4960  case T_BooleanTest:
4961  retval = _copyBooleanTest(from);
4962  break;
4963  case T_CoerceToDomain:
4964  retval = _copyCoerceToDomain(from);
4965  break;
4966  case T_CoerceToDomainValue:
4967  retval = _copyCoerceToDomainValue(from);
4968  break;
4969  case T_SetToDefault:
4970  retval = _copySetToDefault(from);
4971  break;
4972  case T_CurrentOfExpr:
4973  retval = _copyCurrentOfExpr(from);
4974  break;
4975  case T_NextValueExpr:
4976  retval = _copyNextValueExpr(from);
4977  break;
4978  case T_InferenceElem:
4979  retval = _copyInferenceElem(from);
4980  break;
4981  case T_TargetEntry:
4982  retval = _copyTargetEntry(from);
4983  break;
4984  case T_RangeTblRef:
4985  retval = _copyRangeTblRef(from);
4986  break;
4987  case T_JoinExpr:
4988  retval = _copyJoinExpr(from);
4989  break;
4990  case T_FromExpr:
4991  retval = _copyFromExpr(from);
4992  break;
4993  case T_OnConflictExpr:
4994  retval = _copyOnConflictExpr(from);
4995  break;
4996 
4997  /*
4998  * RELATION NODES
4999  */
5000  case T_PathKey:
5001  retval = _copyPathKey(from);
5002  break;
5003  case T_RestrictInfo:
5004  retval = _copyRestrictInfo(from);
5005  break;
5006  case T_PlaceHolderVar:
5007  retval = _copyPlaceHolderVar(from);
5008  break;
5009  case T_SpecialJoinInfo:
5010  retval = _copySpecialJoinInfo(from);
5011  break;
5012  case T_AppendRelInfo:
5013  retval = _copyAppendRelInfo(from);
5014  break;
5016  retval = _copyPartitionedChildRelInfo(from);
5017  break;
5018  case T_PlaceHolderInfo:
5019  retval = _copyPlaceHolderInfo(from);
5020  break;
5021 
5022  /*
5023  * VALUE NODES
5024  */
5025  case T_Integer:
5026  case T_Float:
5027  case T_String:
5028  case T_BitString:
5029  case T_Null:
5030  retval = _copyValue(from);
5031  break;
5032 
5033  /*
5034  * LIST NODES
5035  */
5036  case T_List:
5037  retval = _copyList(from);
5038  break;
5039 
5040  /*
5041  * Lists of integers and OIDs don't need to be deep-copied, so we
5042  * perform a shallow copy via list_copy()
5043  */
5044  case T_IntList:
5045  case T_OidList:
5046  retval = list_copy(from);
5047  break;
5048 
5049  /*
5050  * EXTENSIBLE NODES
5051  */
5052  case T_ExtensibleNode:
5053  retval = _copyExtensibleNode(from);
5054  break;
5055 
5056  /*
5057  * PARSE NODES
5058  */
5059  case T_Query:
5060  retval = _copyQuery(from);
5061  break;
5062  case T_RawStmt:
5063  retval = _copyRawStmt(from);
5064  break;
5065  case T_InsertStmt:
5066  retval = _copyInsertStmt(from);
5067  break;
5068  case T_DeleteStmt:
5069  retval = _copyDeleteStmt(from);
5070  break;
5071  case T_UpdateStmt:
5072  retval = _copyUpdateStmt(from);
5073  break;
5074  case T_SelectStmt:
5075  retval = _copySelectStmt(from);
5076  break;
5077  case T_SetOperationStmt:
5078  retval = _copySetOperationStmt(from);
5079  break;
5080  case T_AlterTableStmt:
5081  retval = _copyAlterTableStmt(from);
5082  break;
5083  case T_AlterTableCmd:
5084  retval = _copyAlterTableCmd(from);
5085  break;
5086  case T_AlterCollationStmt:
5087  retval = _copyAlterCollationStmt(from);
5088  break;
5089  case T_AlterDomainStmt:
5090  retval = _copyAlterDomainStmt(from);
5091  break;
5092  case T_GrantStmt:
5093  retval = _copyGrantStmt(from);
5094  break;
5095  case T_GrantRoleStmt:
5096  retval = _copyGrantRoleStmt(from);
5097  break;
5099  retval = _copyAlterDefaultPrivilegesStmt(from);
5100  break;
5101  case T_DeclareCursorStmt:
5102  retval = _copyDeclareCursorStmt(from);
5103  break;
5104  case T_ClosePortalStmt:
5105  retval = _copyClosePortalStmt(from);
5106  break;
5107  case T_ClusterStmt:
5108  retval = _copyClusterStmt(from);
5109  break;
5110  case T_CopyStmt:
5111  retval = _copyCopyStmt(from);
5112  break;
5113  case T_CreateStmt:
5114  retval = _copyCreateStmt(from);
5115  break;
5116  case T_TableLikeClause:
5117  retval = _copyTableLikeClause(from);
5118  break;
5119  case T_DefineStmt:
5120  retval = _copyDefineStmt(from);
5121  break;
5122  case T_DropStmt:
5123  retval = _copyDropStmt(from);
5124  break;
5125  case T_TruncateStmt:
5126  retval = _copyTruncateStmt(from);
5127  break;
5128  case T_CommentStmt:
5129  retval = _copyCommentStmt(from);
5130  break;
5131  case T_SecLabelStmt:
5132  retval = _copySecLabelStmt(from);
5133  break;
5134  case T_FetchStmt:
5135  retval = _copyFetchStmt(from);
5136  break;
5137  case T_IndexStmt:
5138  retval = _copyIndexStmt(from);
5139  break;
5140  case T_CreateStatsStmt:
5141  retval = _copyCreateStatsStmt(from);
5142  break;
5143  case T_CreateFunctionStmt:
5144  retval = _copyCreateFunctionStmt(from);
5145  break;
5146  case T_FunctionParameter:
5147  retval = _copyFunctionParameter(from);
5148  break;
5149  case T_AlterFunctionStmt:
5150  retval = _copyAlterFunctionStmt(from);
5151  break;
5152  case T_DoStmt:
5153  retval = _copyDoStmt(from);
5154  break;
5155  case T_RenameStmt:
5156  retval = _copyRenameStmt(from);
5157  break;
5159  retval = _copyAlterObjectDependsStmt(from);
5160  break;
5162  retval = _copyAlterObjectSchemaStmt(from);
5163  break;
5164  case T_AlterOwnerStmt:
5165  retval = _copyAlterOwnerStmt(from);
5166  break;
5167  case T_AlterOperatorStmt:
5168  retval = _copyAlterOperatorStmt(from);
5169  break;
5170  case T_RuleStmt:
5171  retval = _copyRuleStmt(from);
5172  break;
5173  case T_NotifyStmt:
5174  retval = _copyNotifyStmt(from);
5175  break;
5176  case T_ListenStmt:
5177  retval = _copyListenStmt(from);
5178  break;
5179  case T_UnlistenStmt:
5180  retval = _copyUnlistenStmt(from);
5181  break;
5182  case T_TransactionStmt:
5183  retval = _copyTransactionStmt(from);
5184  break;
5185  case T_CompositeTypeStmt:
5186  retval = _copyCompositeTypeStmt(from);
5187  break;
5188  case T_CreateEnumStmt:
5189  retval = _copyCreateEnumStmt(from);
5190  break;
5191  case T_CreateRangeStmt:
5192  retval = _copyCreateRangeStmt(from);
5193  break;
5194  case T_AlterEnumStmt:
5195  retval = _copyAlterEnumStmt(from);
5196  break;
5197  case T_ViewStmt:
5198  retval = _copyViewStmt(from);
5199  break;
5200  case T_LoadStmt:
5201  retval = _copyLoadStmt(from);
5202  break;
5203  case T_CreateDomainStmt:
5204  retval = _copyCreateDomainStmt(from);
5205  break;
5206  case T_CreateOpClassStmt:
5207  retval = _copyCreateOpClassStmt(from);
5208  break;
5209  case T_CreateOpClassItem:
5210  retval = _copyCreateOpClassItem(from);
5211  break;
5212  case T_CreateOpFamilyStmt:
5213  retval = _copyCreateOpFamilyStmt(from);
5214  break;
5215  case T_AlterOpFamilyStmt:
5216  retval = _copyAlterOpFamilyStmt(from);
5217  break;
5218  case T_CreatedbStmt:
5219  retval = _copyCreatedbStmt(from);
5220  break;
5221  case T_AlterDatabaseStmt:
5222  retval = _copyAlterDatabaseStmt(from);
5223  break;
5225  retval = _copyAlterDatabaseSetStmt(from);
5226  break;
5227  case T_DropdbStmt:
5228  retval = _copyDropdbStmt(from);
5229  break;
5230  case T_VacuumStmt:
5231  retval = _copyVacuumStmt(from);
5232  break;
5233  case T_VacuumRelation:
5234  retval = _copyVacuumRelation(from);
5235  break;
5236  case T_ExplainStmt:
5237  retval = _copyExplainStmt(from);
5238  break;
5239  case T_CreateTableAsStmt:
5240  retval = _copyCreateTableAsStmt(from);
5241  break;
5242  case T_RefreshMatViewStmt:
5243  retval = _copyRefreshMatViewStmt(from);
5244  break;
5245  case T_ReplicaIdentityStmt:
5246  retval = _copyReplicaIdentityStmt(from);
5247  break;
5248  case T_AlterSystemStmt:
5249  retval = _copyAlterSystemStmt(from);
5250  break;
5251  case T_CreateSeqStmt:
5252  retval = _copyCreateSeqStmt(from);
5253  break;
5254  case T_AlterSeqStmt:
5255  retval = _copyAlterSeqStmt(from);
5256  break;
5257  case T_VariableSetStmt:
5258  retval = _copyVariableSetStmt(from);
5259  break;
5260  case T_VariableShowStmt:
5261  retval = _copyVariableShowStmt(from);
5262  break;
5263  case T_DiscardStmt:
5264  retval = _copyDiscardStmt(from);
5265  break;
5267  retval = _copyCreateTableSpaceStmt(from);
5268  break;
5269  case T_DropTableSpaceStmt:
5270  retval = _copyDropTableSpaceStmt(from);
5271  break;
5273  retval = _copyAlterTableSpaceOptionsStmt(from);
5274  break;
5276  retval = _copyAlterTableMoveAllStmt(from);
5277  break;
5278  case T_CreateExtensionStmt:
5279  retval = _copyCreateExtensionStmt(from);
5280  break;
5281  case T_AlterExtensionStmt:
5282  retval = _copyAlterExtensionStmt(from);
5283  break;
5285  retval = _copyAlterExtensionContentsStmt(from);
5286  break;
5287  case T_CreateFdwStmt:
5288  retval = _copyCreateFdwStmt(from);
5289  break;
5290  case T_AlterFdwStmt:
5291  retval = _copyAlterFdwStmt(from);
5292  break;
5294  retval = _copyCreateForeignServerStmt(from);
5295  break;
5297  retval = _copyAlterForeignServerStmt(from);
5298  break;
5300  retval = _copyCreateUserMappingStmt(from);
5301  break;
5303  retval = _copyAlterUserMappingStmt(from);
5304  break;
5305  case T_DropUserMappingStmt:
5306  retval = _copyDropUserMappingStmt(from);
5307  break;
5309  retval = _copyCreateForeignTableStmt(from);
5310  break;
5312  retval = _copyImportForeignSchemaStmt(from);
5313  break;
5314  case T_CreateTransformStmt:
5315  retval = _copyCreateTransformStmt(from);
5316  break;
5317  case T_CreateAmStmt:
5318  retval = _copyCreateAmStmt(from);
5319  break;
5320  case T_CreateTrigStmt:
5321  retval = _copyCreateTrigStmt(from);
5322  break;
5323  case T_CreateEventTrigStmt:
5324  retval = _copyCreateEventTrigStmt(from);
5325  break;
5326  case T_AlterEventTrigStmt:
5327  retval = _copyAlterEventTrigStmt(from);
5328  break;
5329  case T_CreatePLangStmt:
5330  retval = _copyCreatePLangStmt(from);
5331  break;
5332  case T_CreateRoleStmt:
5333  retval = _copyCreateRoleStmt(from);
5334  break;
5335  case T_AlterRoleStmt:
5336  retval = _copyAlterRoleStmt(from);
5337  break;
5338  case T_AlterRoleSetStmt:
5339  retval = _copyAlterRoleSetStmt(from);
5340  break;
5341  case T_DropRoleStmt:
5342  retval = _copyDropRoleStmt(from);
5343  break;
5344  case T_LockStmt:
5345  retval = _copyLockStmt(from);
5346  break;
5347  case T_ConstraintsSetStmt:
5348  retval = _copyConstraintsSetStmt(from);
5349  break;
5350  case T_ReindexStmt:
5351  retval = _copyReindexStmt(from);
5352  break;
5353  case T_CheckPointStmt:
5354  retval = (void *) makeNode(CheckPointStmt);
5355  break;
5356  case T_CreateSchemaStmt:
5357  retval = _copyCreateSchemaStmt(from);
5358  break;
5360  retval = _copyCreateConversionStmt(from);
5361  break;
5362  case T_CreateCastStmt:
5363  retval = _copyCreateCastStmt(from);
5364  break;
5365  case T_PrepareStmt:
5366  retval = _copyPrepareStmt(from);
5367  break;
5368  case T_ExecuteStmt:
5369  retval = _copyExecuteStmt(from);
5370  break;
5371  case T_DeallocateStmt:
5372  retval = _copyDeallocateStmt(from);
5373  break;
5374  case T_DropOwnedStmt:
5375  retval = _copyDropOwnedStmt(from);
5376  break;
5377  case T_ReassignOwnedStmt:
5378  retval = _copyReassignOwnedStmt(from);
5379  break;
5381  retval = _copyAlterTSDictionaryStmt(from);
5382  break;
5384  retval = _copyAlterTSConfigurationStmt(from);
5385  break;
5386  case T_CreatePolicyStmt:
5387  retval = _copyCreatePolicyStmt(from);
5388  break;
5389  case T_AlterPolicyStmt:
5390  retval = _copyAlterPolicyStmt(from);
5391  break;
5393  retval = _copyCreatePublicationStmt(from);
5394  break;
5396  retval = _copyAlterPublicationStmt(from);
5397  break;
5399  retval = _copyCreateSubscriptionStmt(from);
5400  break;
5402  retval = _copyAlterSubscriptionStmt(from);
5403  break;
5405  retval = _copyDropSubscriptionStmt(from);
5406  break;
5407  case T_A_Expr:
5408  retval = _copyAExpr(from);
5409  break;
5410  case T_ColumnRef:
5411  retval = _copyColumnRef(from);
5412  break;
5413  case T_ParamRef:
5414  retval = _copyParamRef(from);
5415  break;
5416  case T_A_Const:
5417  retval = _copyAConst(from);
5418  break;
5419  case T_FuncCall:
5420  retval = _copyFuncCall(from);
5421  break;
5422  case T_A_Star:
5423  retval = _copyAStar(from);
5424  break;
5425  case T_A_Indices:
5426  retval = _copyAIndices(from);
5427  break;
5428  case T_A_Indirection:
5429  retval = _copyA_Indirection(from);
5430  break;
5431  case T_A_ArrayExpr:
5432  retval = _copyA_ArrayExpr(from);
5433  break;
5434  case T_ResTarget:
5435  retval = _copyResTarget(from);
5436  break;
5437  case T_MultiAssignRef:
5438  retval = _copyMultiAssignRef(from);
5439  break;
5440  case T_TypeCast:
5441  retval = _copyTypeCast(from);
5442  break;
5443  case T_CollateClause:
5444  retval = _copyCollateClause(from);
5445  break;
5446  case T_SortBy:
5447  retval = _copySortBy(from);
5448  break;
5449  case T_WindowDef:
5450  retval = _copyWindowDef(from);
5451  break;
5452  case T_RangeSubselect:
5453  retval = _copyRangeSubselect(from);
5454  break;
5455  case T_RangeFunction:
5456  retval = _copyRangeFunction(from);
5457  break;
5458  case T_RangeTableSample:
5459  retval = _copyRangeTableSample(from);
5460  break;
5461  case T_RangeTableFunc:
5462  retval = _copyRangeTableFunc(from);
5463  break;
5464  case T_RangeTableFuncCol:
5465  retval = _copyRangeTableFuncCol(from);
5466  break;
5467  case T_TypeName:
5468  retval = _copyTypeName(from);
5469  break;
5470  case T_IndexElem:
5471  retval = _copyIndexElem(from);
5472  break;
5473  case T_ColumnDef:
5474  retval = _copyColumnDef(from);
5475  break;
5476  case T_Constraint:
5477  retval = _copyConstraint(from);
5478  break;
5479  case T_DefElem:
5480  retval = _copyDefElem(from);
5481  break;
5482  case T_LockingClause:
5483  retval = _copyLockingClause(from);
5484  break;
5485  case T_RangeTblEntry:
5486  retval = _copyRangeTblEntry(from);
5487  break;
5488  case T_RangeTblFunction:
5489  retval = _copyRangeTblFunction(from);
5490  break;
5491  case T_TableSampleClause:
5492  retval = _copyTableSampleClause(from);
5493  break;
5494  case T_WithCheckOption:
5495  retval = _copyWithCheckOption(from);
5496  break;
5497  case T_SortGroupClause:
5498  retval = _copySortGroupClause(from);
5499  break;
5500  case T_GroupingSet:
5501  retval = _copyGroupingSet(from);
5502  break;
5503  case T_WindowClause:
5504  retval = _copyWindowClause(from);
5505  break;
5506  case T_RowMarkClause:
5507  retval = _copyRowMarkClause(from);
5508  break;
5509  case T_WithClause:
5510  retval = _copyWithClause(from);
5511  break;
5512  case T_InferClause:
5513  retval = _copyInferClause(from);
5514  break;
5515  case T_OnConflictClause:
5516  retval = _copyOnConflictClause(from);
5517  break;
5518  case T_CommonTableExpr:
5519  retval = _copyCommonTableExpr(from);
5520  break;
5521  case T_ObjectWithArgs:
5522  retval = _copyObjectWithArgs(from);
5523  break;
5524  case T_AccessPriv:
5525  retval = _copyAccessPriv(from);
5526  break;
5527  case T_XmlSerialize:
5528  retval = _copyXmlSerialize(from);
5529  break;
5530  case T_RoleSpec:
5531  retval = _copyRoleSpec(from);
5532  break;
5533  case T_TriggerTransition:
5534  retval = _copyTriggerTransition(from);
5535  break;
5536  case T_PartitionElem:
5537  retval = _copyPartitionElem(from);
5538  break;
5539  case T_PartitionSpec:
5540  retval = _copyPartitionSpec(from);
5541  break;
5542  case T_PartitionBoundSpec:
5543  retval = _copyPartitionBoundSpec(from);
5544  break;
5545  case T_PartitionRangeDatum:
5546  retval = _copyPartitionRangeDatum(from);
5547  break;
5548  case T_PartitionCmd:
5549  retval = _copyPartitionCmd(from);
5550  break;
5551 
5552  /*
5553  * MISCELLANEOUS NODES
5554  */
5555  case T_ForeignKeyCacheInfo:
5556  retval = _copyForeignKeyCacheInfo(from);
5557  break;
5558 
5559  default:
5560  elog(ERROR, "unrecognized node type: %d", (int) nodeTag(from));
5561  retval = 0; /* keep compiler quiet */
5562  break;
5563  }
5564 
5565  return retval;
5566 }
static Limit * _copyLimit(const Limit *from)
Definition: copyfuncs.c:1117
static WindowClause * _copyWindowClause(const WindowClause *from)
Definition: copyfuncs.c:2400
static CreateEnumStmt * _copyCreateEnumStmt(const CreateEnumStmt *from)
Definition: copyfuncs.c:3593
static RefreshMatViewStmt * _copyRefreshMatViewStmt(const RefreshMatViewStmt *from)
Definition: copyfuncs.c:3814
static RangeSubselect * _copyRangeSubselect(const RangeSubselect *from)
Definition: copyfuncs.c:2690
static AlterSystemStmt * _copyAlterSystemStmt(const AlterSystemStmt *from)
Definition: copyfuncs.c:3837
static DeallocateStmt * _copyDeallocateStmt(const DeallocateStmt *from)
Definition: copyfuncs.c:4345
static PlanInvalItem * _copyPlanInvalItem(const PlanInvalItem *from)
Definition: copyfuncs.c:1173
static Scan * _copyScan(const Scan *from)
Definition: copyfuncs.c:418
static AlterEventTrigStmt * _copyAlterEventTrigStmt(const AlterEventTrigStmt *from)
Definition: copyfuncs.c:4172
static SeqScan * _copySeqScan(const SeqScan *from)
Definition: copyfuncs.c:434
static AlterTableMoveAllStmt * _copyAlterTableMoveAllStmt(const AlterTableMoveAllStmt *from)
Definition: copyfuncs.c:3943
static DiscardStmt * _copyDiscardStmt(const DiscardStmt *from)
Definition: copyfuncs.c:3897
static DeleteStmt * _copyDeleteStmt(const DeleteStmt *from)
Definition: copyfuncs.c:2999
static Unique * _copyUnique(const Unique *from)
Definition: copyfuncs.c:1021
static BitmapAnd * _copyBitmapAnd(const BitmapAnd *from)
Definition: copyfuncs.c:308
static AccessPriv * _copyAccessPriv(const AccessPriv *from)
Definition: copyfuncs.c:3155
static FromExpr * _copyFromExpr(const FromExpr *from)
Definition: copyfuncs.c:2097
Definition: nodes.h:77
static DropStmt * _copyDropStmt(const DropStmt *from)
Definition: copyfuncs.c:3300
static Plan * _copyPlan(const Plan *from)
Definition: copyfuncs.c:137
static LockStmt * _copyLockStmt(const LockStmt *from)
Definition: copyfuncs.c:4245
static RowMarkClause * _copyRowMarkClause(const RowMarkClause *from)
Definition: copyfuncs.c:2418
static Var * _copyVar(const Var *from)
Definition: copyfuncs.c:1276
static ValuesScan * _copyValuesScan(const ValuesScan *from)
Definition: copyfuncs.c:653
static AlterForeignServerStmt * _copyAlterForeignServerStmt(const AlterForeignServerStmt *from)
Definition: copyfuncs.c:4032
static RowExpr * _copyRowExpr(const RowExpr *from)
Definition: copyfuncs.c:1814
static VariableShowStmt * _copyVariableShowStmt(const VariableShowStmt *from)
Definition: copyfuncs.c:3887
Definition: nodes.h:79
static TransactionStmt * _copyTransactionStmt(const TransactionStmt *from)
Definition: copyfuncs.c:3570
static TableLikeClause * _copyTableLikeClause(const TableLikeClause *from)
Definition: copyfuncs.c:3274
static CreatePolicyStmt * _copyCreatePolicyStmt(const CreatePolicyStmt *from)
Definition: copyfuncs.c:4404
static AlterEnumStmt * _copyAlterEnumStmt(const AlterEnumStmt *from)
Definition: copyfuncs.c:3615
Definition: nodes.h:53
static AlterExtensionStmt * _copyAlterExtensionStmt(const AlterExtensionStmt *from)
Definition: copyfuncs.c:3969
static DeclareCursorStmt * _copyDeclareCursorStmt(const DeclareCursorStmt *from)
Definition: copyfuncs.c:3192
static A_Const * _copyAConst(const A_Const *from)
Definition: copyfuncs.c:2525
static HashJoin * _copyHashJoin(const HashJoin *from)
Definition: copyfuncs.c:886
static AlterFdwStmt * _copyAlterFdwStmt(const AlterFdwStmt *from)
Definition: copyfuncs.c:4005
static PartitionSpec * _copyPartitionSpec(const PartitionSpec *from)
Definition: copyfuncs.c:4448
static GroupingSet * _copyGroupingSet(const GroupingSet *from)
Definition: copyfuncs.c:2388
static DropRoleStmt * _copyDropRoleStmt(const DropRoleStmt *from)
Definition: copyfuncs.c:4234
static CreateAmStmt * _copyCreateAmStmt(const CreateAmStmt *from)
Definition: copyfuncs.c:4124
static AlternativeSubPlan * _copyAlternativeSubPlan(const AlternativeSubPlan *from)
Definition: copyfuncs.c:1617
static UnlistenStmt * _copyUnlistenStmt(const UnlistenStmt *from)
Definition: copyfuncs.c:3560
static Hash * _copyHash(const Hash *from)
Definition: copyfuncs.c:1044
static AlterTSConfigurationStmt * _copyAlterTSConfigurationStmt(const AlterTSConfigurationStmt *from)
Definition: copyfuncs.c:4388
static CreateOpClassStmt * _copyCreateOpClassStmt(const CreateOpClassStmt *from)
Definition: copyfuncs.c:3668
static Result * _copyResult(const Result *from)
Definition: copyfuncs.c:154
static Material * _copyMaterial(const Material *from)
Definition: copyfuncs.c:908
static GatherMerge * _copyGatherMerge(const GatherMerge *from)
Definition: copyfuncs.c:376
static PartitionedChildRelInfo * _copyPartitionedChildRelInfo(const PartitionedChildRelInfo *from)
Definition: copyfuncs.c:2258
static ArrayRef * _copyArrayRef(const ArrayRef *from)
Definition: copyfuncs.c:1421
static RestrictInfo * _copyRestrictInfo(const RestrictInfo *from)
Definition: copyfuncs.c:2156
static ClusterStmt * _copyClusterStmt(const ClusterStmt *from)
Definition: copyfuncs.c:3214
static FunctionScan * _copyFunctionScan(const FunctionScan *from)
Definition: copyfuncs.c:610
static AlterFunctionStmt * _copyAlterFunctionStmt(const AlterFunctionStmt *from)
Definition: copyfuncs.c:3434
static SortBy * _copySortBy(const SortBy *from)
Definition: copyfuncs.c:2659
static MergeJoin * _copyMergeJoin(const MergeJoin *from)
Definition: copyfuncs.c:855
static AlterCollationStmt * _copyAlterCollationStmt(const AlterCollationStmt *from)
Definition: copyfuncs.c:3101
static RuleStmt * _copyRuleStmt(const RuleStmt *from)
Definition: copyfuncs.c:3523
static ImportForeignSchemaStmt * _copyImportForeignSchemaStmt(const ImportForeignSchemaStmt *from)
Definition: copyfuncs.c:4095
static FuncCall * _copyFuncCall(const FuncCall *from)
Definition: copyfuncs.c:2556
static RangeVar * _copyRangeVar(const RangeVar *from)
Definition: copyfuncs.c:1206
static CreatedbStmt * _copyCreatedbStmt(const CreatedbStmt *from)
Definition: copyfuncs.c:3722
static CopyStmt * _copyCopyStmt(const CopyStmt *from)
Definition: copyfuncs.c:3226
List * list_copy(const List *oldlist)
Definition: list.c:1160
static PartitionBoundSpec * _copyPartitionBoundSpec(const PartitionBoundSpec *from)
Definition: copyfuncs.c:4460
static CreateTableSpaceStmt * _copyCreateTableSpaceStmt(const CreateTableSpaceStmt *from)
Definition: copyfuncs.c:3907
static GrantStmt * _copyGrantStmt(const GrantStmt *from)
Definition: copyfuncs.c:3126
static Value * _copyValue(const Value *from)
Definition: copyfuncs.c:4633
Definition: nodes.h:48
static AlterOperatorStmt * _copyAlterOperatorStmt(const AlterOperatorStmt *from)
Definition: copyfuncs.c:3512
static Alias * _copyAlias(const Alias *from)
Definition: copyfuncs.c:1192
static BitmapHeapScan * _copyBitmapHeapScan(const BitmapHeapScan *from)
Definition: copyfuncs.c:547
static Sort * _copySort(const Sort *from)
Definition: copyfuncs.c:925
static A_ArrayExpr * _copyA_ArrayExpr(const A_ArrayExpr *from)
Definition: copyfuncs.c:2606
static Agg * _copyAgg(const Agg *from)
Definition: copyfuncs.c:965
static IntoClause * _copyIntoClause(const IntoClause *from)
Definition: copyfuncs.c:1250
static ParamRef * _copyParamRef(const ParamRef *from)
Definition: copyfuncs.c:2514
Definition: nodes.h:75
static IndexStmt * _copyIndexStmt(const IndexStmt *from)
Definition: copyfuncs.c:3364
static FuncExpr * _copyFuncExpr(const FuncExpr *from)
Definition: copyfuncs.c:1441
static ObjectWithArgs * _copyObjectWithArgs(const ObjectWithArgs *from)
Definition: copyfuncs.c:3143
static BoolExpr * _copyBoolExpr(const BoolExpr *from)
Definition: copyfuncs.c:1556
static PathKey * _copyPathKey(const PathKey *from)
Definition: copyfuncs.c:2139
static DefineStmt * _copyDefineStmt(const DefineStmt *from)
Definition: copyfuncs.c:3285
static Join * _copyJoin(const Join *from)
Definition: copyfuncs.c:816
static WithClause * _copyWithClause(const WithClause *from)
Definition: copyfuncs.c:2431
static TypeName * _copyTypeName(const TypeName *from)
Definition: copyfuncs.c:2642
static WindowAgg * _copyWindowAgg(const WindowAgg *from)
Definition: copyfuncs.c:991
static PlannedStmt * _copyPlannedStmt(const PlannedStmt *from)
Definition: copyfuncs.c:78
static WindowDef * _copyWindowDef(const WindowDef *from)
Definition: copyfuncs.c:2673
static ScalarArrayOpExpr * _copyScalarArrayOpExpr(const ScalarArrayOpExpr *from)
Definition: copyfuncs.c:1538
static ExecuteStmt * _copyExecuteStmt(const ExecuteStmt *from)
Definition: copyfuncs.c:4334
static SubqueryScan * _copySubqueryScan(const SubqueryScan *from)
Definition: copyfuncs.c:589
static WithCheckOption * _copyWithCheckOption(const WithCheckOption *from)
Definition: copyfuncs.c:2360
static ReplicaIdentityStmt * _copyReplicaIdentityStmt(const ReplicaIdentityStmt *from)
Definition: copyfuncs.c:3826
static ExplainStmt * _copyExplainStmt(const ExplainStmt *from)
Definition: copyfuncs.c:3789
static TableSampleClause * _copyTableSampleClause(const TableSampleClause *from)
Definition: copyfuncs.c:2348
static DropUserMappingStmt * _copyDropUserMappingStmt(const DropUserMappingStmt *from)
Definition: copyfuncs.c:4070
static PartitionCmd * _copyPartitionCmd(const PartitionCmd *from)
Definition: copyfuncs.c:4489
static NestLoop * _copyNestLoop(const NestLoop *from)
Definition: copyfuncs.c:833
static Query * _copyQuery(const Query *from)
Definition: copyfuncs.c:2926
static XmlSerialize * _copyXmlSerialize(const XmlSerialize *from)
Definition: copyfuncs.c:2889
static ConvertRowtypeExpr * _copyConvertRowtypeExpr(const ConvertRowtypeExpr *from)
Definition: copyfuncs.c:1717
static RawStmt * _copyRawStmt(const RawStmt *from)
Definition: copyfuncs.c:2971
static PlaceHolderVar * _copyPlaceHolderVar(const PlaceHolderVar *from)
Definition: copyfuncs.c:2201
static BitmapOr * _copyBitmapOr(const BitmapOr *from)
Definition: copyfuncs.c:329
static RenameStmt * _copyRenameStmt(const RenameStmt *from)
Definition: copyfuncs.c:3455
static ReassignOwnedStmt * _copyReassignOwnedStmt(const ReassignOwnedStmt *from)
Definition: copyfuncs.c:4366
static ColumnDef * _copyColumnDef(const ColumnDef *from)
Definition: copyfuncs.c:2803
static A_Star * _copyAStar(const A_Star *from)
Definition: copyfuncs.c:2575
static SpecialJoinInfo * _copySpecialJoinInfo(const SpecialJoinInfo *from)
Definition: copyfuncs.c:2217
static RelabelType * _copyRelabelType(const RelabelType *from)
Definition: copyfuncs.c:1663
static CaseTestExpr * _copyCaseTestExpr(const CaseTestExpr *from)
Definition: copyfuncs.c:1781
static CreatePublicationStmt * _copyCreatePublicationStmt(const CreatePublicationStmt *from)
Definition: copyfuncs.c:4500
static CreateFunctionStmt * _copyCreateFunctionStmt(const CreateFunctionStmt *from)
Definition: copyfuncs.c:3406
static AlterTableStmt * _copyAlterTableStmt(const AlterTableStmt *from)
Definition: copyfuncs.c:3072
static SortGroupClause * _copySortGroupClause(const SortGroupClause *from)
Definition: copyfuncs.c:2374
static ArrayCoerceExpr * _copyArrayCoerceExpr(const ArrayCoerceExpr *from)
Definition: copyfuncs.c:1698
static RoleSpec * _copyRoleSpec(const RoleSpec *from)
Definition: copyfuncs.c:2902
Definition: nodes.h:45
static NextValueExpr * _copyNextValueExpr(const NextValueExpr *from)
Definition: copyfuncs.c:2016
#define ERROR
Definition: elog.h:43
static CreateOpClassItem * _copyCreateOpClassItem(const CreateOpClassItem *from)
Definition: copyfuncs.c:3683
static AlterExtensionContentsStmt * _copyAlterExtensionContentsStmt(const AlterExtensionContentsStmt *from)
Definition: copyfuncs.c:3980
static List * _copyList(const List *from)
Definition: copyfuncs.c:4580
static MergeAppend * _copyMergeAppend(const MergeAppend *from)
Definition: copyfuncs.c:253
static VariableSetStmt * _copyVariableSetStmt(const VariableSetStmt *from)
Definition: copyfuncs.c:3874
static AlterPublicationStmt * _copyAlterPublicationStmt(const AlterPublicationStmt *from)
Definition: copyfuncs.c:4513
static CreateRoleStmt * _copyCreateRoleStmt(const CreateRoleStmt *from)
Definition: copyfuncs.c:4198
static LockingClause * _copyLockingClause(const LockingClause *from)
Definition: copyfuncs.c:2877
static PlaceHolderInfo * _copyPlaceHolderInfo(const PlaceHolderInfo *from)
Definition: copyfuncs.c:2272
static ArrayExpr * _copyArrayExpr(const ArrayExpr *from)
Definition: copyfuncs.c:1796
static CreateExtensionStmt * _copyCreateExtensionStmt(const CreateExtensionStmt *from)
Definition: copyfuncs.c:3957
static SetToDefault * _copySetToDefault(const SetToDefault *from)
Definition: copyfuncs.c:1985
Definition: nodes.h:76
static DropSubscriptionStmt * _copyDropSubscriptionStmt(const DropSubscriptionStmt *from)
Definition: copyfuncs.c:4554
static AlterDefaultPrivilegesStmt * _copyAlterDefaultPrivilegesStmt(const AlterDefaultPrivilegesStmt *from)
Definition: copyfuncs.c:3181
static CreateSeqStmt * _copyCreateSeqStmt(const CreateSeqStmt *from)
Definition: copyfuncs.c:3847
static CreateSchemaStmt * _copyCreateSchemaStmt(const CreateSchemaStmt *from)
Definition: copyfuncs.c:4281
static AlterOpFamilyStmt * _copyAlterOpFamilyStmt(const AlterOpFamilyStmt *from)
Definition: copyfuncs.c:3709
Definition: nodes.h:142
static AlterObjectSchemaStmt * _copyAlterObjectSchemaStmt(const AlterObjectSchemaStmt *from)
Definition: copyfuncs.c:3485
void check_stack_depth(void)
Definition: postgres.c:3150
static RowCompareExpr * _copyRowCompareExpr(const RowCompareExpr *from)
Definition: copyfuncs.c:1831
static Constraint * _copyConstraint(const Constraint *from)
Definition: copyfuncs.c:2828
static CommentStmt * _copyCommentStmt(const CommentStmt *from)
Definition: copyfuncs.c:3326
static CreateRangeStmt * _copyCreateRangeStmt(const CreateRangeStmt *from)
Definition: copyfuncs.c:3604
static AlterUserMappingStmt * _copyAlterUserMappingStmt(const AlterUserMappingStmt *from)
Definition: copyfuncs.c:4058
static IndexElem * _copyIndexElem(const IndexElem *from)
Definition: copyfuncs.c:2787
static CollateExpr * _copyCollateExpr(const CollateExpr *from)
Definition: copyfuncs.c:1733
static TypeCast * _copyTypeCast(const TypeCast *from)
Definition: copyfuncs.c:2763
static MultiAssignRef * _copyMultiAssignRef(const MultiAssignRef *from)
Definition: copyfuncs.c:2630
static OnConflictExpr * _copyOnConflictExpr(const OnConflictExpr *from)
Definition: copyfuncs.c:2111
static InferenceElem * _copyInferenceElem(const InferenceElem *from)
Definition: copyfuncs.c:2030
static IndexOnlyScan * _copyIndexOnlyScan(const IndexOnlyScan *from)
Definition: copyfuncs.c:498
static CreateConversionStmt * _copyCreateConversionStmt(const CreateConversionStmt *from)
Definition: copyfuncs.c:4294
static CreateForeignTableStmt * _copyCreateForeignTableStmt(const CreateForeignTableStmt *from)
Definition: copyfuncs.c:4082
static SubPlan * _copySubPlan(const SubPlan *from)
Definition: copyfuncs.c:1589
Definition: nodes.h:291
static DropdbStmt * _copyDropdbStmt(const DropdbStmt *from)
Definition: copyfuncs.c:3755
Definition: nodes.h:147
static CreateFdwStmt * _copyCreateFdwStmt(const CreateFdwStmt *from)
Definition: copyfuncs.c:3993
static SQLValueFunction * _copySQLValueFunction(const SQLValueFunction *from)
Definition: copyfuncs.c:1883
static DropTableSpaceStmt * _copyDropTableSpaceStmt(const DropTableSpaceStmt *from)
Definition: copyfuncs.c:3920
Definition: nodes.h:146
static RangeTblEntry * _copyRangeTblEntry(const RangeTblEntry *from)
Definition: copyfuncs.c:2292
static PlanRowMark * _copyPlanRowMark(const PlanRowMark *from)
Definition: copyfuncs.c:1153
static ListenStmt * _copyListenStmt(const ListenStmt *from)
Definition: copyfuncs.c:3550
static ProjectSet * _copyProjectSet(const ProjectSet *from)
Definition: copyfuncs.c:175
Definition: nodes.h:304
static DistinctExpr * _copyDistinctExpr(const DistinctExpr *from)
Definition: copyfuncs.c:1498
static LoadStmt * _copyLoadStmt(const LoadStmt *from)
Definition: copyfuncs.c:3645
static ConstraintsSetStmt * _copyConstraintsSetStmt(const ConstraintsSetStmt *from)
Definition: copyfuncs.c:4257
static BitmapIndexScan * _copyBitmapIndexScan(const BitmapIndexScan *from)
Definition: copyfuncs.c:523
static AlterTSDictionaryStmt * _copyAlterTSDictionaryStmt(const AlterTSDictionaryStmt *from)
Definition: copyfuncs.c:4377
static AlterDatabaseStmt * _copyAlterDatabaseStmt(const AlterDatabaseStmt *from)
Definition: copyfuncs.c:3733
static CoalesceExpr * _copyCoalesceExpr(const CoalesceExpr *from)
Definition: copyfuncs.c:1849
static CoerceToDomain * _copyCoerceToDomain(const CoerceToDomain *from)
Definition: copyfuncs.c:1951
static ReindexStmt * _copyReindexStmt(const ReindexStmt *from)
Definition: copyfuncs.c:4268
static ExtensibleNode * _copyExtensibleNode(const ExtensibleNode *from)
Definition: copyfuncs.c:4612
static RangeTableFuncCol * _copyRangeTableFuncCol(const RangeTableFuncCol *from)
Definition: copyfuncs.c:2747
static CaseWhen * _copyCaseWhen(const CaseWhen *from)
Definition: copyfuncs.c:1766
static Gather * _copyGather(const Gather *from)
Definition: copyfuncs.c:351
static FieldSelect * _copyFieldSelect(const FieldSelect *from)
Definition: copyfuncs.c:1630
static CoerceToDomainValue * _copyCoerceToDomainValue(const CoerceToDomainValue *from)
Definition: copyfuncs.c:1969
static SelectStmt * _copySelectStmt(const SelectStmt *from)
Definition: copyfuncs.c:3028
static ViewStmt * _copyViewStmt(const ViewStmt *from)
Definition: copyfuncs.c:3630
static AlterObjectDependsStmt * _copyAlterObjectDependsStmt(const AlterObjectDependsStmt *from)
Definition: copyfuncs.c:3472
static CoerceViaIO * _copyCoerceViaIO(const CoerceViaIO *from)
Definition: copyfuncs.c:1681
Definition: nodes.h:82
static ModifyTable * _copyModifyTable(const ModifyTable *from)
Definition: copyfuncs.c:191
static TableFunc * _copyTableFunc(const TableFunc *from)
Definition: copyfuncs.c:1225
static GrantRoleStmt * _copyGrantRoleStmt(const GrantRoleStmt *from)
Definition: copyfuncs.c:3166
static InsertStmt * _copyInsertStmt(const InsertStmt *from)
Definition: copyfuncs.c:2983
static Append * _copyAppend(const Append *from)
Definition: copyfuncs.c:231
#define makeNode(_type_)
Definition: nodes.h:558
static AppendRelInfo * _copyAppendRelInfo(const AppendRelInfo *from)
Definition: copyfuncs.c:2240
static NullTest * _copyNullTest(const NullTest *from)
Definition: copyfuncs.c:1920
static CreateTableAsStmt * _copyCreateTableAsStmt(const CreateTableAsStmt *from)
Definition: copyfuncs.c:3800
static Aggref * _copyAggref(const Aggref *from)
Definition: copyfuncs.c:1353
static CreateUserMappingStmt * _copyCreateUserMappingStmt(const CreateUserMappingStmt *from)
Definition: copyfuncs.c:4045
static A_Indices * _copyAIndices(const A_Indices *from)
Definition: copyfuncs.c:2583
static VacuumStmt * _copyVacuumStmt(const VacuumStmt *from)
Definition: copyfuncs.c:3766
static VacuumRelation * _copyVacuumRelation(const VacuumRelation *from)
Definition: copyfuncs.c:3777
static RangeTblRef * _copyRangeTblRef(const RangeTblRef *from)
Definition: copyfuncs.c:2064
static TableFuncScan * _copyTableFuncScan(const TableFuncScan *from)
Definition: copyfuncs.c:632
static WorkTableScan * _copyWorkTableScan(const WorkTableScan *from)
Definition: copyfuncs.c:717
static FieldStore * _copyFieldStore(const FieldStore *from)
Definition: copyfuncs.c:1647
static ForeignScan * _copyForeignScan(const ForeignScan *from)
Definition: copyfuncs.c:738
static CurrentOfExpr * _copyCurrentOfExpr(const CurrentOfExpr *from)
Definition: copyfuncs.c:2001
static SetOp * _copySetOp(const SetOp *from)
Definition: copyfuncs.c:1067
static ForeignKeyCacheInfo * _copyForeignKeyCacheInfo(const ForeignKeyCacheInfo *from)
Definition: copyfuncs.c:4663
static AlterOwnerStmt * _copyAlterOwnerStmt(const AlterOwnerStmt *from)
Definition: copyfuncs.c:3499
static RangeTblFunction * _copyRangeTblFunction(const RangeTblFunction *from)
Definition: copyfuncs.c:2332
static CreateCastStmt * _copyCreateCastStmt(const CreateCastStmt *from)
Definition: copyfuncs.c:4308
static JoinExpr * _copyJoinExpr(const JoinExpr *from)
Definition: copyfuncs.c:2077
static DropOwnedStmt * _copyDropOwnedStmt(const DropOwnedStmt *from)
Definition: copyfuncs.c:4355
static TargetEntry * _copyTargetEntry(const TargetEntry *from)
Definition: copyfuncs.c:2045
static CollateClause * _copyCollateClause(const CollateClause *from)
Definition: copyfuncs.c:2775
static PrepareStmt * _copyPrepareStmt(const PrepareStmt *from)
Definition: copyfuncs.c:4322
static AlterTableSpaceOptionsStmt * _copyAlterTableSpaceOptionsStmt(const AlterTableSpaceOptionsStmt *from)
Definition: copyfuncs.c:3931
static RangeTableSample * _copyRangeTableSample(const RangeTableSample *from)
Definition: copyfuncs.c:2717
static LockRows * _copyLockRows(const LockRows *from)
Definition: copyfuncs.c:1095
static CreatePLangStmt * _copyCreatePLangStmt(const CreatePLangStmt *from)
Definition: copyfuncs.c:4183
static GroupingFunc * _copyGroupingFunc(const GroupingFunc *from)
Definition: copyfuncs.c:1382
static Group * _copyGroup(const Group *from)
Definition: copyfuncs.c:948
static AlterSubscriptionStmt * _copyAlterSubscriptionStmt(const AlterSubscriptionStmt *from)
Definition: copyfuncs.c:4540
static CustomScan * _copyCustomScan(const CustomScan *from)
Definition: copyfuncs.c:766
static OnConflictClause * _copyOnConflictClause(const OnConflictClause *from)
Definition: copyfuncs.c:2456
#define nodeTag(nodeptr)
Definition: nodes.h:515
Definition: nodes.h:44
static FetchStmt * _copyFetchStmt(const FetchStmt *from)
Definition: copyfuncs.c:3351
static AlterPolicyStmt * _copyAlterPolicyStmt(const AlterPolicyStmt *from)
Definition: copyfuncs.c:4420
Definition: nodes.h:70
static NullIfExpr * _copyNullIfExpr(const NullIfExpr *from)
Definition: copyfuncs.c:1518
Definition: nodes.h:286
static CommonTableExpr * _copyCommonTableExpr(const CommonTableExpr *from)
Definition: copyfuncs.c:2470
Definition: nodes.h:83
static NotifyStmt * _copyNotifyStmt(const NotifyStmt *from)
Definition: copyfuncs.c:3539
static RecursiveUnion * _copyRecursiveUnion(const RecursiveUnion *from)
Definition: copyfuncs.c:280
static NamedTuplestoreScan * _copyNamedTuplestoreScan(const NamedTuplestoreScan *from)
Definition: copyfuncs.c:696
Definition: nodes.h:283
static Const * _copyConst(const Const *from)
Definition: copyfuncs.c:1297
static SubLink * _copySubLink(const SubLink *from)
Definition: copyfuncs.c:1571
static NestLoopParam * _copyNestLoopParam(const NestLoopParam *from)
Definition: copyfuncs.c:1139
static OpExpr * _copyOpExpr(const OpExpr *from)
Definition: copyfuncs.c:1478
static AlterRoleStmt * _copyAlterRoleStmt(const AlterRoleStmt *from)
Definition: copyfuncs.c:4210