PostgreSQL Source Code  git master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
equalfuncs.c File Reference
#include "postgres.h"
#include "nodes/extensible.h"
#include "nodes/relation.h"
#include "utils/datum.h"
Include dependency graph for equalfuncs.c:

Go to the source code of this file.

Macros

#define COMPARE_SCALAR_FIELD(fldname)
 
#define COMPARE_NODE_FIELD(fldname)
 
#define COMPARE_BITMAPSET_FIELD(fldname)
 
#define COMPARE_STRING_FIELD(fldname)
 
#define equalstr(a, b)   (((a) != NULL && (b) != NULL) ? (strcmp(a, b) == 0) : (a) == (b))
 
#define COMPARE_POINTER_FIELD(fldname, sz)
 
#define COMPARE_LOCATION_FIELD(fldname)   ((void) 0)
 
#define COMPARE_COERCIONFORM_FIELD(fldname)   ((void) 0)
 

Functions

static bool _equalAlias (const Alias *a, const Alias *b)
 
static bool _equalRangeVar (const RangeVar *a, const RangeVar *b)
 
static bool _equalIntoClause (const IntoClause *a, const IntoClause *b)
 
static bool _equalVar (const Var *a, const Var *b)
 
static bool _equalConst (const Const *a, const Const *b)
 
static bool _equalParam (const Param *a, const Param *b)
 
static bool _equalAggref (const Aggref *a, const Aggref *b)
 
static bool _equalGroupingFunc (const GroupingFunc *a, const GroupingFunc *b)
 
static bool _equalWindowFunc (const WindowFunc *a, const WindowFunc *b)
 
static bool _equalArrayRef (const ArrayRef *a, const ArrayRef *b)
 
static bool _equalFuncExpr (const FuncExpr *a, const FuncExpr *b)
 
static bool _equalNamedArgExpr (const NamedArgExpr *a, const NamedArgExpr *b)
 
static bool _equalOpExpr (const OpExpr *a, const OpExpr *b)
 
static bool _equalDistinctExpr (const DistinctExpr *a, const DistinctExpr *b)
 
static bool _equalNullIfExpr (const NullIfExpr *a, const NullIfExpr *b)
 
static bool _equalScalarArrayOpExpr (const ScalarArrayOpExpr *a, const ScalarArrayOpExpr *b)
 
static bool _equalBoolExpr (const BoolExpr *a, const BoolExpr *b)
 
static bool _equalSubLink (const SubLink *a, const SubLink *b)
 
static bool _equalSubPlan (const SubPlan *a, const SubPlan *b)
 
static bool _equalAlternativeSubPlan (const AlternativeSubPlan *a, const AlternativeSubPlan *b)
 
static bool _equalFieldSelect (const FieldSelect *a, const FieldSelect *b)
 
static bool _equalFieldStore (const FieldStore *a, const FieldStore *b)
 
static bool _equalRelabelType (const RelabelType *a, const RelabelType *b)
 
static bool _equalCoerceViaIO (const CoerceViaIO *a, const CoerceViaIO *b)
 
static bool _equalArrayCoerceExpr (const ArrayCoerceExpr *a, const ArrayCoerceExpr *b)
 
static bool _equalConvertRowtypeExpr (const ConvertRowtypeExpr *a, const ConvertRowtypeExpr *b)
 
static bool _equalCollateExpr (const CollateExpr *a, const CollateExpr *b)
 
static bool _equalCaseExpr (const CaseExpr *a, const CaseExpr *b)
 
static bool _equalCaseWhen (const CaseWhen *a, const CaseWhen *b)
 
static bool _equalCaseTestExpr (const CaseTestExpr *a, const CaseTestExpr *b)
 
static bool _equalArrayExpr (const ArrayExpr *a, const ArrayExpr *b)
 
static bool _equalRowExpr (const RowExpr *a, const RowExpr *b)
 
static bool _equalRowCompareExpr (const RowCompareExpr *a, const RowCompareExpr *b)
 
static bool _equalCoalesceExpr (const CoalesceExpr *a, const CoalesceExpr *b)
 
static bool _equalMinMaxExpr (const MinMaxExpr *a, const MinMaxExpr *b)
 
static bool _equalSQLValueFunction (const SQLValueFunction *a, const SQLValueFunction *b)
 
static bool _equalXmlExpr (const XmlExpr *a, const XmlExpr *b)
 
static bool _equalNullTest (const NullTest *a, const NullTest *b)
 
static bool _equalBooleanTest (const BooleanTest *a, const BooleanTest *b)
 
static bool _equalCoerceToDomain (const CoerceToDomain *a, const CoerceToDomain *b)
 
static bool _equalCoerceToDomainValue (const CoerceToDomainValue *a, const CoerceToDomainValue *b)
 
static bool _equalSetToDefault (const SetToDefault *a, const SetToDefault *b)
 
static bool _equalCurrentOfExpr (const CurrentOfExpr *a, const CurrentOfExpr *b)
 
static bool _equalInferenceElem (const InferenceElem *a, const InferenceElem *b)
 
static bool _equalTargetEntry (const TargetEntry *a, const TargetEntry *b)
 
static bool _equalRangeTblRef (const RangeTblRef *a, const RangeTblRef *b)
 
static bool _equalJoinExpr (const JoinExpr *a, const JoinExpr *b)
 
static bool _equalFromExpr (const FromExpr *a, const FromExpr *b)
 
static bool _equalOnConflictExpr (const OnConflictExpr *a, const OnConflictExpr *b)
 
static bool _equalPathKey (const PathKey *a, const PathKey *b)
 
static bool _equalRestrictInfo (const RestrictInfo *a, const RestrictInfo *b)
 
static bool _equalPlaceHolderVar (const PlaceHolderVar *a, const PlaceHolderVar *b)
 
static bool _equalSpecialJoinInfo (const SpecialJoinInfo *a, const SpecialJoinInfo *b)
 
static bool _equalAppendRelInfo (const AppendRelInfo *a, const AppendRelInfo *b)
 
static bool _equalPlaceHolderInfo (const PlaceHolderInfo *a, const PlaceHolderInfo *b)
 
static bool _equalExtensibleNode (const ExtensibleNode *a, const ExtensibleNode *b)
 
static bool _equalQuery (const Query *a, const Query *b)
 
static bool _equalRawStmt (const RawStmt *a, const RawStmt *b)
 
static bool _equalInsertStmt (const InsertStmt *a, const InsertStmt *b)
 
static bool _equalDeleteStmt (const DeleteStmt *a, const DeleteStmt *b)
 
static bool _equalUpdateStmt (const UpdateStmt *a, const UpdateStmt *b)
 
static bool _equalSelectStmt (const SelectStmt *a, const SelectStmt *b)
 
static bool _equalSetOperationStmt (const SetOperationStmt *a, const SetOperationStmt *b)
 
static bool _equalAlterTableStmt (const AlterTableStmt *a, const AlterTableStmt *b)
 
static bool _equalAlterTableCmd (const AlterTableCmd *a, const AlterTableCmd *b)
 
static bool _equalAlterDomainStmt (const AlterDomainStmt *a, const AlterDomainStmt *b)
 
static bool _equalGrantStmt (const GrantStmt *a, const GrantStmt *b)
 
static bool _equalFuncWithArgs (const FuncWithArgs *a, const FuncWithArgs *b)
 
static bool _equalAccessPriv (const AccessPriv *a, const AccessPriv *b)
 
static bool _equalGrantRoleStmt (const GrantRoleStmt *a, const GrantRoleStmt *b)
 
static bool _equalAlterDefaultPrivilegesStmt (const AlterDefaultPrivilegesStmt *a, const AlterDefaultPrivilegesStmt *b)
 
static bool _equalDeclareCursorStmt (const DeclareCursorStmt *a, const DeclareCursorStmt *b)
 
static bool _equalClosePortalStmt (const ClosePortalStmt *a, const ClosePortalStmt *b)
 
static bool _equalClusterStmt (const ClusterStmt *a, const ClusterStmt *b)
 
static bool _equalCopyStmt (const CopyStmt *a, const CopyStmt *b)
 
static bool _equalCreateStmt (const CreateStmt *a, const CreateStmt *b)
 
static bool _equalTableLikeClause (const TableLikeClause *a, const TableLikeClause *b)
 
static bool _equalDefineStmt (const DefineStmt *a, const DefineStmt *b)
 
static bool _equalDropStmt (const DropStmt *a, const DropStmt *b)
 
static bool _equalTruncateStmt (const TruncateStmt *a, const TruncateStmt *b)
 
static bool _equalCommentStmt (const CommentStmt *a, const CommentStmt *b)
 
static bool _equalSecLabelStmt (const SecLabelStmt *a, const SecLabelStmt *b)
 
static bool _equalFetchStmt (const FetchStmt *a, const FetchStmt *b)
 
static bool _equalIndexStmt (const IndexStmt *a, const IndexStmt *b)
 
static bool _equalCreateFunctionStmt (const CreateFunctionStmt *a, const CreateFunctionStmt *b)
 
static bool _equalFunctionParameter (const FunctionParameter *a, const FunctionParameter *b)
 
static bool _equalAlterFunctionStmt (const AlterFunctionStmt *a, const AlterFunctionStmt *b)
 
static bool _equalDoStmt (const DoStmt *a, const DoStmt *b)
 
static bool _equalRenameStmt (const RenameStmt *a, const RenameStmt *b)
 
static bool _equalAlterObjectDependsStmt (const AlterObjectDependsStmt *a, const AlterObjectDependsStmt *b)
 
static bool _equalAlterObjectSchemaStmt (const AlterObjectSchemaStmt *a, const AlterObjectSchemaStmt *b)
 
static bool _equalAlterOwnerStmt (const AlterOwnerStmt *a, const AlterOwnerStmt *b)
 
static bool _equalAlterOperatorStmt (const AlterOperatorStmt *a, const AlterOperatorStmt *b)
 
static bool _equalRuleStmt (const RuleStmt *a, const RuleStmt *b)
 
static bool _equalNotifyStmt (const NotifyStmt *a, const NotifyStmt *b)
 
static bool _equalListenStmt (const ListenStmt *a, const ListenStmt *b)
 
static bool _equalUnlistenStmt (const UnlistenStmt *a, const UnlistenStmt *b)
 
static bool _equalTransactionStmt (const TransactionStmt *a, const TransactionStmt *b)
 
static bool _equalCompositeTypeStmt (const CompositeTypeStmt *a, const CompositeTypeStmt *b)
 
static bool _equalCreateEnumStmt (const CreateEnumStmt *a, const CreateEnumStmt *b)
 
static bool _equalCreateRangeStmt (const CreateRangeStmt *a, const CreateRangeStmt *b)
 
static bool _equalAlterEnumStmt (const AlterEnumStmt *a, const AlterEnumStmt *b)
 
static bool _equalViewStmt (const ViewStmt *a, const ViewStmt *b)
 
static bool _equalLoadStmt (const LoadStmt *a, const LoadStmt *b)
 
static bool _equalCreateDomainStmt (const CreateDomainStmt *a, const CreateDomainStmt *b)
 
static bool _equalCreateOpClassStmt (const CreateOpClassStmt *a, const CreateOpClassStmt *b)
 
static bool _equalCreateOpClassItem (const CreateOpClassItem *a, const CreateOpClassItem *b)
 
static bool _equalCreateOpFamilyStmt (const CreateOpFamilyStmt *a, const CreateOpFamilyStmt *b)
 
static bool _equalAlterOpFamilyStmt (const AlterOpFamilyStmt *a, const AlterOpFamilyStmt *b)
 
static bool _equalCreatedbStmt (const CreatedbStmt *a, const CreatedbStmt *b)
 
static bool _equalAlterDatabaseStmt (const AlterDatabaseStmt *a, const AlterDatabaseStmt *b)
 
static bool _equalAlterDatabaseSetStmt (const AlterDatabaseSetStmt *a, const AlterDatabaseSetStmt *b)
 
static bool _equalDropdbStmt (const DropdbStmt *a, const DropdbStmt *b)
 
static bool _equalVacuumStmt (const VacuumStmt *a, const VacuumStmt *b)
 
static bool _equalExplainStmt (const ExplainStmt *a, const ExplainStmt *b)
 
static bool _equalCreateTableAsStmt (const CreateTableAsStmt *a, const CreateTableAsStmt *b)
 
static bool _equalRefreshMatViewStmt (const RefreshMatViewStmt *a, const RefreshMatViewStmt *b)
 
static bool _equalReplicaIdentityStmt (const ReplicaIdentityStmt *a, const ReplicaIdentityStmt *b)
 
static bool _equalAlterSystemStmt (const AlterSystemStmt *a, const AlterSystemStmt *b)
 
static bool _equalCreateSeqStmt (const CreateSeqStmt *a, const CreateSeqStmt *b)
 
static bool _equalAlterSeqStmt (const AlterSeqStmt *a, const AlterSeqStmt *b)
 
static bool _equalVariableSetStmt (const VariableSetStmt *a, const VariableSetStmt *b)
 
static bool _equalVariableShowStmt (const VariableShowStmt *a, const VariableShowStmt *b)
 
static bool _equalDiscardStmt (const DiscardStmt *a, const DiscardStmt *b)
 
static bool _equalCreateTableSpaceStmt (const CreateTableSpaceStmt *a, const CreateTableSpaceStmt *b)
 
static bool _equalDropTableSpaceStmt (const DropTableSpaceStmt *a, const DropTableSpaceStmt *b)
 
static bool _equalAlterTableSpaceOptionsStmt (const AlterTableSpaceOptionsStmt *a, const AlterTableSpaceOptionsStmt *b)
 
static bool _equalAlterTableMoveAllStmt (const AlterTableMoveAllStmt *a, const AlterTableMoveAllStmt *b)
 
static bool _equalCreateExtensionStmt (const CreateExtensionStmt *a, const CreateExtensionStmt *b)
 
static bool _equalAlterExtensionStmt (const AlterExtensionStmt *a, const AlterExtensionStmt *b)
 
static bool _equalAlterExtensionContentsStmt (const AlterExtensionContentsStmt *a, const AlterExtensionContentsStmt *b)
 
static bool _equalCreateFdwStmt (const CreateFdwStmt *a, const CreateFdwStmt *b)
 
static bool _equalAlterFdwStmt (const AlterFdwStmt *a, const AlterFdwStmt *b)
 
static bool _equalCreateForeignServerStmt (const CreateForeignServerStmt *a, const CreateForeignServerStmt *b)
 
static bool _equalAlterForeignServerStmt (const AlterForeignServerStmt *a, const AlterForeignServerStmt *b)
 
static bool _equalCreateUserMappingStmt (const CreateUserMappingStmt *a, const CreateUserMappingStmt *b)
 
static bool _equalAlterUserMappingStmt (const AlterUserMappingStmt *a, const AlterUserMappingStmt *b)
 
static bool _equalDropUserMappingStmt (const DropUserMappingStmt *a, const DropUserMappingStmt *b)
 
static bool _equalCreateForeignTableStmt (const CreateForeignTableStmt *a, const CreateForeignTableStmt *b)
 
static bool _equalImportForeignSchemaStmt (const ImportForeignSchemaStmt *a, const ImportForeignSchemaStmt *b)
 
static bool _equalCreateTransformStmt (const CreateTransformStmt *a, const CreateTransformStmt *b)
 
static bool _equalCreateAmStmt (const CreateAmStmt *a, const CreateAmStmt *b)
 
static bool _equalCreateTrigStmt (const CreateTrigStmt *a, const CreateTrigStmt *b)
 
static bool _equalCreateEventTrigStmt (const CreateEventTrigStmt *a, const CreateEventTrigStmt *b)
 
static bool _equalAlterEventTrigStmt (const AlterEventTrigStmt *a, const AlterEventTrigStmt *b)
 
static bool _equalCreatePLangStmt (const CreatePLangStmt *a, const CreatePLangStmt *b)
 
static bool _equalCreateRoleStmt (const CreateRoleStmt *a, const CreateRoleStmt *b)
 
static bool _equalAlterRoleStmt (const AlterRoleStmt *a, const AlterRoleStmt *b)
 
static bool _equalAlterRoleSetStmt (const AlterRoleSetStmt *a, const AlterRoleSetStmt *b)
 
static bool _equalDropRoleStmt (const DropRoleStmt *a, const DropRoleStmt *b)
 
static bool _equalLockStmt (const LockStmt *a, const LockStmt *b)
 
static bool _equalConstraintsSetStmt (const ConstraintsSetStmt *a, const ConstraintsSetStmt *b)
 
static bool _equalReindexStmt (const ReindexStmt *a, const ReindexStmt *b)
 
static bool _equalCreateSchemaStmt (const CreateSchemaStmt *a, const CreateSchemaStmt *b)
 
static bool _equalCreateConversionStmt (const CreateConversionStmt *a, const CreateConversionStmt *b)
 
static bool _equalCreateCastStmt (const CreateCastStmt *a, const CreateCastStmt *b)
 
static bool _equalPrepareStmt (const PrepareStmt *a, const PrepareStmt *b)
 
static bool _equalExecuteStmt (const ExecuteStmt *a, const ExecuteStmt *b)
 
static bool _equalDeallocateStmt (const DeallocateStmt *a, const DeallocateStmt *b)
 
static bool _equalDropOwnedStmt (const DropOwnedStmt *a, const DropOwnedStmt *b)
 
static bool _equalReassignOwnedStmt (const ReassignOwnedStmt *a, const ReassignOwnedStmt *b)
 
static bool _equalAlterTSDictionaryStmt (const AlterTSDictionaryStmt *a, const AlterTSDictionaryStmt *b)
 
static bool _equalAlterTSConfigurationStmt (const AlterTSConfigurationStmt *a, const AlterTSConfigurationStmt *b)
 
static bool _equalCreatePublicationStmt (const CreatePublicationStmt *a, const CreatePublicationStmt *b)
 
static bool _equalAlterPublicationStmt (const AlterPublicationStmt *a, const AlterPublicationStmt *b)
 
static bool _equalCreateSubscriptionStmt (const CreateSubscriptionStmt *a, const CreateSubscriptionStmt *b)
 
static bool _equalAlterSubscriptionStmt (const AlterSubscriptionStmt *a, const AlterSubscriptionStmt *b)
 
static bool _equalDropSubscriptionStmt (const DropSubscriptionStmt *a, const DropSubscriptionStmt *b)
 
static bool _equalCreatePolicyStmt (const CreatePolicyStmt *a, const CreatePolicyStmt *b)
 
static bool _equalAlterPolicyStmt (const AlterPolicyStmt *a, const AlterPolicyStmt *b)
 
static bool _equalAExpr (const A_Expr *a, const A_Expr *b)
 
static bool _equalColumnRef (const ColumnRef *a, const ColumnRef *b)
 
static bool _equalParamRef (const ParamRef *a, const ParamRef *b)
 
static bool _equalAConst (const A_Const *a, const A_Const *b)
 
static bool _equalFuncCall (const FuncCall *a, const FuncCall *b)
 
static bool _equalAStar (const A_Star *a, const A_Star *b)
 
static bool _equalAIndices (const A_Indices *a, const A_Indices *b)
 
static bool _equalA_Indirection (const A_Indirection *a, const A_Indirection *b)
 
static bool _equalA_ArrayExpr (const A_ArrayExpr *a, const A_ArrayExpr *b)
 
static bool _equalResTarget (const ResTarget *a, const ResTarget *b)
 
static bool _equalMultiAssignRef (const MultiAssignRef *a, const MultiAssignRef *b)
 
static bool _equalTypeName (const TypeName *a, const TypeName *b)
 
static bool _equalTypeCast (const TypeCast *a, const TypeCast *b)
 
static bool _equalCollateClause (const CollateClause *a, const CollateClause *b)
 
static bool _equalSortBy (const SortBy *a, const SortBy *b)
 
static bool _equalWindowDef (const WindowDef *a, const WindowDef *b)
 
static bool _equalRangeSubselect (const RangeSubselect *a, const RangeSubselect *b)
 
static bool _equalRangeFunction (const RangeFunction *a, const RangeFunction *b)
 
static bool _equalRangeTableSample (const RangeTableSample *a, const RangeTableSample *b)
 
static bool _equalIndexElem (const IndexElem *a, const IndexElem *b)
 
static bool _equalColumnDef (const ColumnDef *a, const ColumnDef *b)
 
static bool _equalConstraint (const Constraint *a, const Constraint *b)
 
static bool _equalDefElem (const DefElem *a, const DefElem *b)
 
static bool _equalLockingClause (const LockingClause *a, const LockingClause *b)
 
static bool _equalRangeTblEntry (const RangeTblEntry *a, const RangeTblEntry *b)
 
static bool _equalRangeTblFunction (const RangeTblFunction *a, const RangeTblFunction *b)
 
static bool _equalTableSampleClause (const TableSampleClause *a, const TableSampleClause *b)
 
static bool _equalWithCheckOption (const WithCheckOption *a, const WithCheckOption *b)
 
static bool _equalSortGroupClause (const SortGroupClause *a, const SortGroupClause *b)
 
static bool _equalGroupingSet (const GroupingSet *a, const GroupingSet *b)
 
static bool _equalWindowClause (const WindowClause *a, const WindowClause *b)
 
static bool _equalRowMarkClause (const RowMarkClause *a, const RowMarkClause *b)
 
static bool _equalWithClause (const WithClause *a, const WithClause *b)
 
static bool _equalInferClause (const InferClause *a, const InferClause *b)
 
static bool _equalOnConflictClause (const OnConflictClause *a, const OnConflictClause *b)
 
static bool _equalCommonTableExpr (const CommonTableExpr *a, const CommonTableExpr *b)
 
static bool _equalXmlSerialize (const XmlSerialize *a, const XmlSerialize *b)
 
static bool _equalRoleSpec (const RoleSpec *a, const RoleSpec *b)
 
static bool _equalTriggerTransition (const TriggerTransition *a, const TriggerTransition *b)
 
static bool _equalPartitionSpec (const PartitionSpec *a, const PartitionSpec *b)
 
static bool _equalPartitionElem (const PartitionElem *a, const PartitionElem *b)
 
static bool _equalPartitionBoundSpec (const PartitionBoundSpec *a, const PartitionBoundSpec *b)
 
static bool _equalPartitionRangeDatum (const PartitionRangeDatum *a, const PartitionRangeDatum *b)
 
static bool _equalPartitionCmd (const PartitionCmd *a, const PartitionCmd *b)
 
static bool _equalList (const List *a, const List *b)
 
static bool _equalValue (const Value *a, const Value *b)
 
bool equal (const void *a, const void *b)
 

Macro Definition Documentation

#define COMPARE_BITMAPSET_FIELD (   fldname)
Value:
do { \
if (!bms_equal(a->fldname, b->fldname)) \
return false; \
} while (0)
bool bms_equal(const Bitmapset *a, const Bitmapset *b)
Definition: bitmapset.c:130

Definition at line 59 of file equalfuncs.c.

Referenced by _equalPlaceHolderInfo(), _equalRangeTblEntry(), _equalRangeTblFunction(), _equalRestrictInfo(), and _equalSpecialJoinInfo().

#define COMPARE_COERCIONFORM_FIELD (   fldname)    ((void) 0)
#define COMPARE_NODE_FIELD (   fldname)
Value:
do { \
if (!equal(a->fldname, b->fldname)) \
return false; \
} while (0)
bool equal(const void *a, const void *b)
Definition: equalfuncs.c:2870

Definition at line 52 of file equalfuncs.c.

Referenced by _equalA_ArrayExpr(), _equalA_Indirection(), _equalAccessPriv(), _equalAExpr(), _equalAggref(), _equalAIndices(), _equalAlias(), _equalAlterDatabaseSetStmt(), _equalAlterDatabaseStmt(), _equalAlterDefaultPrivilegesStmt(), _equalAlterDomainStmt(), _equalAlterEnumStmt(), _equalAlterExtensionContentsStmt(), _equalAlterExtensionStmt(), _equalAlterFdwStmt(), _equalAlterForeignServerStmt(), _equalAlterFunctionStmt(), _equalAlternativeSubPlan(), _equalAlterObjectDependsStmt(), _equalAlterObjectSchemaStmt(), _equalAlterOperatorStmt(), _equalAlterOpFamilyStmt(), _equalAlterOwnerStmt(), _equalAlterPolicyStmt(), _equalAlterPublicationStmt(), _equalAlterRoleSetStmt(), _equalAlterRoleStmt(), _equalAlterSeqStmt(), _equalAlterSubscriptionStmt(), _equalAlterSystemStmt(), _equalAlterTableCmd(), _equalAlterTableMoveAllStmt(), _equalAlterTableSpaceOptionsStmt(), _equalAlterTableStmt(), _equalAlterTSConfigurationStmt(), _equalAlterTSDictionaryStmt(), _equalAlterUserMappingStmt(), _equalAppendRelInfo(), _equalArrayCoerceExpr(), _equalArrayExpr(), _equalArrayRef(), _equalBooleanTest(), _equalBoolExpr(), _equalCaseExpr(), _equalCaseWhen(), _equalClusterStmt(), _equalCoalesceExpr(), _equalCoerceToDomain(), _equalCoerceViaIO(), _equalCollateClause(), _equalCollateExpr(), _equalColumnDef(), _equalColumnRef(), _equalCommentStmt(), _equalCommonTableExpr(), _equalCompositeTypeStmt(), _equalConstraint(), _equalConstraintsSetStmt(), _equalConvertRowtypeExpr(), _equalCopyStmt(), _equalCreateAmStmt(), _equalCreateCastStmt(), _equalCreateConversionStmt(), _equalCreatedbStmt(), _equalCreateDomainStmt(), _equalCreateEnumStmt(), _equalCreateEventTrigStmt(), _equalCreateExtensionStmt(), _equalCreateFdwStmt(), _equalCreateForeignServerStmt(), _equalCreateForeignTableStmt(), _equalCreateFunctionStmt(), _equalCreateOpClassItem(), _equalCreateOpClassStmt(), _equalCreateOpFamilyStmt(), _equalCreatePLangStmt(), _equalCreatePolicyStmt(), _equalCreatePublicationStmt(), _equalCreateRangeStmt(), _equalCreateRoleStmt(), _equalCreateSchemaStmt(), _equalCreateSeqStmt(), _equalCreateStmt(), _equalCreateSubscriptionStmt(), _equalCreateTableAsStmt(), _equalCreateTableSpaceStmt(), _equalCreateTransformStmt(), _equalCreateTrigStmt(), _equalCreateUserMappingStmt(), _equalDeclareCursorStmt(), _equalDefElem(), _equalDefineStmt(), _equalDeleteStmt(), _equalDistinctExpr(), _equalDoStmt(), _equalDropOwnedStmt(), _equalDropRoleStmt(), _equalDropStmt(), _equalDropUserMappingStmt(), _equalExecuteStmt(), _equalExplainStmt(), _equalFieldSelect(), _equalFieldStore(), _equalFromExpr(), _equalFuncCall(), _equalFuncExpr(), _equalFunctionParameter(), _equalFuncWithArgs(), _equalGrantRoleStmt(), _equalGrantStmt(), _equalGroupingFunc(), _equalGroupingSet(), _equalImportForeignSchemaStmt(), _equalIndexElem(), _equalIndexStmt(), _equalInferClause(), _equalInferenceElem(), _equalInsertStmt(), _equalIntoClause(), _equalJoinExpr(), _equalLockingClause(), _equalLockStmt(), _equalMinMaxExpr(), _equalMultiAssignRef(), _equalNamedArgExpr(), _equalNullIfExpr(), _equalNullTest(), _equalOnConflictClause(), _equalOnConflictExpr(), _equalOpExpr(), _equalPartitionBoundSpec(), _equalPartitionCmd(), _equalPartitionElem(), _equalPartitionRangeDatum(), _equalPartitionSpec(), _equalPlaceHolderInfo(), _equalPrepareStmt(), _equalQuery(), _equalRangeFunction(), _equalRangeSubselect(), _equalRangeTableSample(), _equalRangeTblEntry(), _equalRangeTblFunction(), _equalRangeVar(), _equalRawStmt(), _equalReassignOwnedStmt(), _equalRefreshMatViewStmt(), _equalReindexStmt(), _equalRelabelType(), _equalRenameStmt(), _equalResTarget(), _equalRestrictInfo(), _equalRowCompareExpr(), _equalRowExpr(), _equalRuleStmt(), _equalScalarArrayOpExpr(), _equalSecLabelStmt(), _equalSelectStmt(), _equalSetOperationStmt(), _equalSortBy(), _equalSpecialJoinInfo(), _equalSubLink(), _equalSubPlan(), _equalTableLikeClause(), _equalTableSampleClause(), _equalTargetEntry(), _equalTransactionStmt(), _equalTruncateStmt(), _equalTypeCast(), _equalTypeName(), _equalUpdateStmt(), _equalVacuumStmt(), _equalVariableSetStmt(), _equalViewStmt(), _equalWindowClause(), _equalWindowDef(), _equalWindowFunc(), _equalWithCheckOption(), _equalWithClause(), _equalXmlExpr(), and _equalXmlSerialize().

#define COMPARE_POINTER_FIELD (   fldname,
  sz 
)
Value:
do { \
if (memcmp(a->fldname, b->fldname, (sz)) != 0) \
return false; \
} while (0)

Definition at line 77 of file equalfuncs.c.

#define COMPARE_SCALAR_FIELD (   fldname)
Value:
do { \
if (a->fldname != b->fldname) \
return false; \
} while (0)

Definition at line 45 of file equalfuncs.c.

Referenced by _equalAExpr(), _equalAggref(), _equalAIndices(), _equalAlterDomainStmt(), _equalAlterEnumStmt(), _equalAlterEventTrigStmt(), _equalAlterExtensionContentsStmt(), _equalAlterForeignServerStmt(), _equalAlterObjectDependsStmt(), _equalAlterObjectSchemaStmt(), _equalAlterOpFamilyStmt(), _equalAlterOwnerStmt(), _equalAlterPublicationStmt(), _equalAlterRoleStmt(), _equalAlterSeqStmt(), _equalAlterTableCmd(), _equalAlterTableMoveAllStmt(), _equalAlterTableSpaceOptionsStmt(), _equalAlterTableStmt(), _equalAlterTSConfigurationStmt(), _equalAppendRelInfo(), _equalArrayCoerceExpr(), _equalArrayExpr(), _equalArrayRef(), _equalBooleanTest(), _equalBoolExpr(), _equalCaseExpr(), _equalCaseTestExpr(), _equalClusterStmt(), _equalCoalesceExpr(), _equalCoerceToDomain(), _equalCoerceToDomainValue(), _equalCoerceViaIO(), _equalCollateExpr(), _equalColumnDef(), _equalCommentStmt(), _equalCommonTableExpr(), _equalConst(), _equalConstraint(), _equalConstraintsSetStmt(), _equalConvertRowtypeExpr(), _equalCopyStmt(), _equalCreateAmStmt(), _equalCreateCastStmt(), _equalCreateConversionStmt(), _equalCreateExtensionStmt(), _equalCreateFunctionStmt(), _equalCreateOpClassItem(), _equalCreateOpClassStmt(), _equalCreatePLangStmt(), _equalCreatePolicyStmt(), _equalCreatePublicationStmt(), _equalCreateRoleStmt(), _equalCreateSchemaStmt(), _equalCreateSeqStmt(), _equalCreateStmt(), _equalCreateTableAsStmt(), _equalCreateTransformStmt(), _equalCreateTrigStmt(), _equalCurrentOfExpr(), _equalDeclareCursorStmt(), _equalDefElem(), _equalDefineStmt(), _equalDiscardStmt(), _equalDistinctExpr(), _equalDropdbStmt(), _equalDropOwnedStmt(), _equalDropRoleStmt(), _equalDropStmt(), _equalDropSubscriptionStmt(), _equalDropTableSpaceStmt(), _equalDropUserMappingStmt(), _equalFetchStmt(), _equalFieldSelect(), _equalFieldStore(), _equalFuncCall(), _equalFuncExpr(), _equalFunctionParameter(), _equalGrantRoleStmt(), _equalGrantStmt(), _equalGroupingFunc(), _equalGroupingSet(), _equalImportForeignSchemaStmt(), _equalIndexElem(), _equalIndexStmt(), _equalInferenceElem(), _equalIntoClause(), _equalJoinExpr(), _equalList(), _equalLockingClause(), _equalLockStmt(), _equalMinMaxExpr(), _equalMultiAssignRef(), _equalNamedArgExpr(), _equalNullIfExpr(), _equalNullTest(), _equalOnConflictClause(), _equalOnConflictExpr(), _equalOpExpr(), _equalParam(), _equalParamRef(), _equalPartitionBoundSpec(), _equalPartitionRangeDatum(), _equalPathKey(), _equalPlaceHolderInfo(), _equalPlaceHolderVar(), _equalQuery(), _equalRangeFunction(), _equalRangeSubselect(), _equalRangeTblEntry(), _equalRangeTblFunction(), _equalRangeTblRef(), _equalRangeVar(), _equalRefreshMatViewStmt(), _equalReindexStmt(), _equalRelabelType(), _equalRenameStmt(), _equalReplicaIdentityStmt(), _equalRestrictInfo(), _equalRoleSpec(), _equalRowCompareExpr(), _equalRowExpr(), _equalRowMarkClause(), _equalRuleStmt(), _equalScalarArrayOpExpr(), _equalSecLabelStmt(), _equalSelectStmt(), _equalSetOperationStmt(), _equalSetToDefault(), _equalSortBy(), _equalSortGroupClause(), _equalSpecialJoinInfo(), _equalSQLValueFunction(), _equalSubLink(), _equalSubPlan(), _equalTableLikeClause(), _equalTableSampleClause(), _equalTargetEntry(), _equalTransactionStmt(), _equalTriggerTransition(), _equalTruncateStmt(), _equalTypeName(), _equalVacuumStmt(), _equalValue(), _equalVar(), _equalVariableSetStmt(), _equalViewStmt(), _equalWindowClause(), _equalWindowDef(), _equalWindowFunc(), _equalWithCheckOption(), _equalWithClause(), _equalXmlExpr(), and _equalXmlSerialize().

#define COMPARE_STRING_FIELD (   fldname)
Value:
do { \
if (!equalstr(a->fldname, b->fldname)) \
return false; \
} while (0)
#define equalstr(a, b)
Definition: equalfuncs.c:73

Definition at line 66 of file equalfuncs.c.

Referenced by _equalAccessPriv(), _equalAlias(), _equalAlterDatabaseSetStmt(), _equalAlterDatabaseStmt(), _equalAlterDomainStmt(), _equalAlterEnumStmt(), _equalAlterEventTrigStmt(), _equalAlterExtensionContentsStmt(), _equalAlterExtensionStmt(), _equalAlterFdwStmt(), _equalAlterForeignServerStmt(), _equalAlterObjectSchemaStmt(), _equalAlterOpFamilyStmt(), _equalAlterPolicyStmt(), _equalAlterPublicationStmt(), _equalAlterRoleSetStmt(), _equalAlterSubscriptionStmt(), _equalAlterTableCmd(), _equalAlterTableMoveAllStmt(), _equalAlterTableSpaceOptionsStmt(), _equalAlterUserMappingStmt(), _equalClosePortalStmt(), _equalClusterStmt(), _equalColumnDef(), _equalCommentStmt(), _equalCommonTableExpr(), _equalConstraint(), _equalCopyStmt(), _equalCreateAmStmt(), _equalCreateConversionStmt(), _equalCreatedbStmt(), _equalCreateEventTrigStmt(), _equalCreateExtensionStmt(), _equalCreateFdwStmt(), _equalCreateForeignServerStmt(), _equalCreateForeignTableStmt(), _equalCreateOpClassStmt(), _equalCreateOpFamilyStmt(), _equalCreatePLangStmt(), _equalCreatePolicyStmt(), _equalCreatePublicationStmt(), _equalCreateRoleStmt(), _equalCreateSchemaStmt(), _equalCreateStmt(), _equalCreateSubscriptionStmt(), _equalCreateTableSpaceStmt(), _equalCreateTransformStmt(), _equalCreateTrigStmt(), _equalCreateUserMappingStmt(), _equalCurrentOfExpr(), _equalDeallocateStmt(), _equalDeclareCursorStmt(), _equalDefElem(), _equalDropdbStmt(), _equalDropSubscriptionStmt(), _equalDropTableSpaceStmt(), _equalDropUserMappingStmt(), _equalExecuteStmt(), _equalExtensibleNode(), _equalFetchStmt(), _equalFunctionParameter(), _equalImportForeignSchemaStmt(), _equalIndexElem(), _equalIndexStmt(), _equalInferClause(), _equalIntoClause(), _equalListenStmt(), _equalLoadStmt(), _equalNamedArgExpr(), _equalNotifyStmt(), _equalPartitionElem(), _equalPartitionSpec(), _equalPrepareStmt(), _equalRangeTblEntry(), _equalRangeVar(), _equalReindexStmt(), _equalRenameStmt(), _equalReplicaIdentityStmt(), _equalResTarget(), _equalRoleSpec(), _equalRuleStmt(), _equalSecLabelStmt(), _equalSubPlan(), _equalTargetEntry(), _equalTransactionStmt(), _equalTriggerTransition(), _equalUnlistenStmt(), _equalValue(), _equalVariableSetStmt(), _equalVariableShowStmt(), _equalWindowClause(), _equalWindowDef(), _equalWithCheckOption(), and _equalXmlExpr().

#define equalstr (   a,
 
)    (((a) != NULL && (b) != NULL) ? (strcmp(a, b) == 0) : (a) == (b))

Definition at line 73 of file equalfuncs.c.

Function Documentation

static bool _equalA_ArrayExpr ( const A_ArrayExpr a,
const A_ArrayExpr b 
)
static

Definition at line 2306 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_NODE_FIELD.

Referenced by equal().

2307 {
2308  COMPARE_NODE_FIELD(elements);
2309  COMPARE_LOCATION_FIELD(location);
2310 
2311  return true;
2312 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalA_Indirection ( const A_Indirection a,
const A_Indirection b 
)
static

Definition at line 2297 of file equalfuncs.c.

References arg, and COMPARE_NODE_FIELD.

Referenced by equal().

2298 {
2300  COMPARE_NODE_FIELD(indirection);
2301 
2302  return true;
2303 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
static bool _equalAccessPriv ( const AccessPriv a,
const AccessPriv b 
)
static

Definition at line 1107 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1108 {
1109  COMPARE_STRING_FIELD(priv_name);
1110  COMPARE_NODE_FIELD(cols);
1111 
1112  return true;
1113 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAConst ( const A_Const a,
const A_Const b 
)
static

Definition at line 2254 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, equal(), and A_Const::val.

Referenced by equal().

2255 {
2256  if (!equal(&a->val, &b->val)) /* hack for in-line Value field */
2257  return false;
2258  COMPARE_LOCATION_FIELD(location);
2259 
2260  return true;
2261 }
bool equal(const void *a, const void *b)
Definition: equalfuncs.c:2870
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
Value val
Definition: parsenodes.h:279
static bool _equalAExpr ( const A_Expr a,
const A_Expr b 
)
static

Definition at line 2224 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and name.

Referenced by equal().

2225 {
2226  COMPARE_SCALAR_FIELD(kind);
2228  COMPARE_NODE_FIELD(lexpr);
2229  COMPARE_NODE_FIELD(rexpr);
2230  COMPARE_LOCATION_FIELD(location);
2231 
2232  return true;
2233 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAggref ( const Aggref a,
const Aggref b 
)
static

Definition at line 191 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

192 {
193  COMPARE_SCALAR_FIELD(aggfnoid);
194  COMPARE_SCALAR_FIELD(aggtype);
195  COMPARE_SCALAR_FIELD(aggcollid);
196  COMPARE_SCALAR_FIELD(inputcollid);
197  /* ignore aggtranstype since it might not be set yet */
198  COMPARE_NODE_FIELD(aggargtypes);
199  COMPARE_NODE_FIELD(aggdirectargs);
201  COMPARE_NODE_FIELD(aggorder);
202  COMPARE_NODE_FIELD(aggdistinct);
203  COMPARE_NODE_FIELD(aggfilter);
204  COMPARE_SCALAR_FIELD(aggstar);
205  COMPARE_SCALAR_FIELD(aggvariadic);
206  COMPARE_SCALAR_FIELD(aggkind);
207  COMPARE_SCALAR_FIELD(agglevelsup);
208  COMPARE_SCALAR_FIELD(aggsplit);
209  COMPARE_LOCATION_FIELD(location);
210 
211  return true;
212 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAIndices ( const A_Indices a,
const A_Indices b 
)
static

Definition at line 2287 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2288 {
2289  COMPARE_SCALAR_FIELD(is_slice);
2290  COMPARE_NODE_FIELD(lidx);
2291  COMPARE_NODE_FIELD(uidx);
2292 
2293  return true;
2294 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlias ( const Alias a,
const Alias b 
)
static

Definition at line 97 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

98 {
99  COMPARE_STRING_FIELD(aliasname);
100  COMPARE_NODE_FIELD(colnames);
101 
102  return true;
103 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterDatabaseSetStmt ( const AlterDatabaseSetStmt a,
const AlterDatabaseSetStmt b 
)
static

Definition at line 1593 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and dbname.

Referenced by equal().

1594 {
1596  COMPARE_NODE_FIELD(setstmt);
1597 
1598  return true;
1599 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
char * dbname
Definition: streamutil.c:41
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterDatabaseStmt ( const AlterDatabaseStmt a,
const AlterDatabaseStmt b 
)
static

Definition at line 1584 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and dbname.

Referenced by equal().

1585 {
1588 
1589  return true;
1590 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
char * dbname
Definition: streamutil.c:41
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterDefaultPrivilegesStmt ( const AlterDefaultPrivilegesStmt a,
const AlterDefaultPrivilegesStmt b 
)
static

Definition at line 1129 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1130 {
1132  COMPARE_NODE_FIELD(action);
1133 
1134  return true;
1135 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterDomainStmt ( const AlterDomainStmt a,
const AlterDomainStmt b 
)
static

Definition at line 1070 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

1071 {
1072  COMPARE_SCALAR_FIELD(subtype);
1073  COMPARE_NODE_FIELD(typeName);
1075  COMPARE_NODE_FIELD(def);
1076  COMPARE_SCALAR_FIELD(behavior);
1077  COMPARE_SCALAR_FIELD(missing_ok);
1078 
1079  return true;
1080 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterEnumStmt ( const AlterEnumStmt a,
const AlterEnumStmt b 
)
static

Definition at line 1483 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1484 {
1485  COMPARE_NODE_FIELD(typeName);
1486  COMPARE_STRING_FIELD(oldVal);
1487  COMPARE_STRING_FIELD(newVal);
1488  COMPARE_STRING_FIELD(newValNeighbor);
1489  COMPARE_SCALAR_FIELD(newValIsAfter);
1490  COMPARE_SCALAR_FIELD(skipIfNewValExists);
1491 
1492  return true;
1493 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterEventTrigStmt ( const AlterEventTrigStmt a,
const AlterEventTrigStmt b 
)
static

Definition at line 1945 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1946 {
1947  COMPARE_STRING_FIELD(trigname);
1948  COMPARE_SCALAR_FIELD(tgenabled);
1949 
1950  return true;
1951 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterExtensionContentsStmt ( const AlterExtensionContentsStmt a,
const AlterExtensionContentsStmt b 
)
static

Definition at line 1781 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1782 {
1783  COMPARE_STRING_FIELD(extname);
1784  COMPARE_SCALAR_FIELD(action);
1785  COMPARE_SCALAR_FIELD(objtype);
1786  COMPARE_NODE_FIELD(objname);
1787  COMPARE_NODE_FIELD(objargs);
1788 
1789  return true;
1790 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterExtensionStmt ( const AlterExtensionStmt a,
const AlterExtensionStmt b 
)
static

Definition at line 1772 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1773 {
1774  COMPARE_STRING_FIELD(extname);
1776 
1777  return true;
1778 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterFdwStmt ( const AlterFdwStmt a,
const AlterFdwStmt b 
)
static

Definition at line 1803 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1804 {
1805  COMPARE_STRING_FIELD(fdwname);
1806  COMPARE_NODE_FIELD(func_options);
1808 
1809  return true;
1810 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterForeignServerStmt ( const AlterForeignServerStmt a,
const AlterForeignServerStmt b 
)
static

Definition at line 1825 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1826 {
1827  COMPARE_STRING_FIELD(servername);
1828  COMPARE_STRING_FIELD(version);
1830  COMPARE_SCALAR_FIELD(has_version);
1831 
1832  return true;
1833 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterFunctionStmt ( const AlterFunctionStmt a,
const AlterFunctionStmt b 
)
static

Definition at line 1327 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1328 {
1329  COMPARE_NODE_FIELD(func);
1330  COMPARE_NODE_FIELD(actions);
1331 
1332  return true;
1333 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlternativeSubPlan ( const AlternativeSubPlan a,
const AlternativeSubPlan b 
)
static

Definition at line 437 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

438 {
439  COMPARE_NODE_FIELD(subplans);
440 
441  return true;
442 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterObjectDependsStmt ( const AlterObjectDependsStmt a,
const AlterObjectDependsStmt b 
)
static

Definition at line 1360 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1361 {
1362  COMPARE_SCALAR_FIELD(objectType);
1363  COMPARE_NODE_FIELD(relation);
1364  COMPARE_NODE_FIELD(objname);
1365  COMPARE_NODE_FIELD(objargs);
1366  COMPARE_NODE_FIELD(extname);
1367 
1368  return true;
1369 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterObjectSchemaStmt ( const AlterObjectSchemaStmt a,
const AlterObjectSchemaStmt b 
)
static

Definition at line 1372 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1373 {
1374  COMPARE_SCALAR_FIELD(objectType);
1375  COMPARE_NODE_FIELD(relation);
1376  COMPARE_NODE_FIELD(object);
1377  COMPARE_NODE_FIELD(objarg);
1378  COMPARE_STRING_FIELD(newschema);
1379  COMPARE_SCALAR_FIELD(missing_ok);
1380 
1381  return true;
1382 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterOperatorStmt ( const AlterOperatorStmt a,
const AlterOperatorStmt b 
)
static

Definition at line 1397 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1398 {
1399  COMPARE_NODE_FIELD(opername);
1400  COMPARE_NODE_FIELD(operargs);
1402 
1403  return true;
1404 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterOpFamilyStmt ( const AlterOpFamilyStmt a,
const AlterOpFamilyStmt b 
)
static

Definition at line 1564 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1565 {
1566  COMPARE_NODE_FIELD(opfamilyname);
1567  COMPARE_STRING_FIELD(amname);
1568  COMPARE_SCALAR_FIELD(isDrop);
1569  COMPARE_NODE_FIELD(items);
1570 
1571  return true;
1572 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterOwnerStmt ( const AlterOwnerStmt a,
const AlterOwnerStmt b 
)
static

Definition at line 1385 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1386 {
1387  COMPARE_SCALAR_FIELD(objectType);
1388  COMPARE_NODE_FIELD(relation);
1389  COMPARE_NODE_FIELD(object);
1390  COMPARE_NODE_FIELD(objarg);
1391  COMPARE_NODE_FIELD(newowner);
1392 
1393  return true;
1394 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterPolicyStmt ( const AlterPolicyStmt a,
const AlterPolicyStmt b 
)
static

Definition at line 2212 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2213 {
2214  COMPARE_STRING_FIELD(policy_name);
2215  COMPARE_NODE_FIELD(table);
2216  COMPARE_NODE_FIELD(roles);
2217  COMPARE_NODE_FIELD(qual);
2218  COMPARE_NODE_FIELD(with_check);
2219 
2220  return true;
2221 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterPublicationStmt ( const AlterPublicationStmt a,
const AlterPublicationStmt b 
)
static

Definition at line 2152 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2154 {
2155  COMPARE_STRING_FIELD(pubname);
2157  COMPARE_NODE_FIELD(tables);
2158  COMPARE_SCALAR_FIELD(for_all_tables);
2159  COMPARE_SCALAR_FIELD(tableAction);
2160 
2161  return true;
2162 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterRoleSetStmt ( const AlterRoleSetStmt a,
const AlterRoleSetStmt b 
)
static

Definition at line 1987 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1988 {
1989  COMPARE_NODE_FIELD(role);
1990  COMPARE_STRING_FIELD(database);
1991  COMPARE_NODE_FIELD(setstmt);
1992 
1993  return true;
1994 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterRoleStmt ( const AlterRoleStmt a,
const AlterRoleStmt b 
)
static

Definition at line 1977 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1978 {
1979  COMPARE_NODE_FIELD(role);
1981  COMPARE_SCALAR_FIELD(action);
1982 
1983  return true;
1984 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterSeqStmt ( const AlterSeqStmt a,
const AlterSeqStmt b 
)
static

Definition at line 1681 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1682 {
1683  COMPARE_NODE_FIELD(sequence);
1685  COMPARE_SCALAR_FIELD(missing_ok);
1686 
1687  return true;
1688 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterSubscriptionStmt ( const AlterSubscriptionStmt a,
const AlterSubscriptionStmt b 
)
static

Definition at line 2177 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2179 {
2180  COMPARE_STRING_FIELD(subname);
2182 
2183  return true;
2184 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterSystemStmt ( const AlterSystemStmt a,
const AlterSystemStmt b 
)
static

Definition at line 1661 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1662 {
1663  COMPARE_NODE_FIELD(setstmt);
1664 
1665  return true;
1666 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterTableCmd ( const AlterTableCmd a,
const AlterTableCmd b 
)
static

Definition at line 1057 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

1058 {
1059  COMPARE_SCALAR_FIELD(subtype);
1061  COMPARE_NODE_FIELD(newowner);
1062  COMPARE_NODE_FIELD(def);
1063  COMPARE_SCALAR_FIELD(behavior);
1064  COMPARE_SCALAR_FIELD(missing_ok);
1065 
1066  return true;
1067 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterTableMoveAllStmt ( const AlterTableMoveAllStmt a,
const AlterTableMoveAllStmt b 
)
static

Definition at line 1749 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1751 {
1752  COMPARE_STRING_FIELD(orig_tablespacename);
1753  COMPARE_SCALAR_FIELD(objtype);
1754  COMPARE_NODE_FIELD(roles);
1755  COMPARE_STRING_FIELD(new_tablespacename);
1756  COMPARE_SCALAR_FIELD(nowait);
1757 
1758  return true;
1759 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterTableSpaceOptionsStmt ( const AlterTableSpaceOptionsStmt a,
const AlterTableSpaceOptionsStmt b 
)
static

Definition at line 1738 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1740 {
1741  COMPARE_STRING_FIELD(tablespacename);
1743  COMPARE_SCALAR_FIELD(isReset);
1744 
1745  return true;
1746 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterTableStmt ( const AlterTableStmt a,
const AlterTableStmt b 
)
static

Definition at line 1046 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1047 {
1048  COMPARE_NODE_FIELD(relation);
1049  COMPARE_NODE_FIELD(cmds);
1050  COMPARE_SCALAR_FIELD(relkind);
1051  COMPARE_SCALAR_FIELD(missing_ok);
1052 
1053  return true;
1054 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterTSConfigurationStmt ( const AlterTSConfigurationStmt a,
const AlterTSConfigurationStmt b 
)
static

Definition at line 2125 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2127 {
2128  COMPARE_SCALAR_FIELD(kind);
2129  COMPARE_NODE_FIELD(cfgname);
2130  COMPARE_NODE_FIELD(tokentype);
2131  COMPARE_NODE_FIELD(dicts);
2132  COMPARE_SCALAR_FIELD(override);
2133  COMPARE_SCALAR_FIELD(replace);
2134  COMPARE_SCALAR_FIELD(missing_ok);
2135 
2136  return true;
2137 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAlterTSDictionaryStmt ( const AlterTSDictionaryStmt a,
const AlterTSDictionaryStmt b 
)
static

Definition at line 2116 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

2117 {
2118  COMPARE_NODE_FIELD(dictname);
2120 
2121  return true;
2122 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalAlterUserMappingStmt ( const AlterUserMappingStmt a,
const AlterUserMappingStmt b 
)
static

Definition at line 1846 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and user.

Referenced by equal().

1847 {
1849  COMPARE_STRING_FIELD(servername);
1851 
1852  return true;
1853 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static char * user
Definition: pg_regress.c:90
static bool _equalAppendRelInfo ( const AppendRelInfo a,
const AppendRelInfo b 
)
static

Definition at line 866 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

867 {
868  COMPARE_SCALAR_FIELD(parent_relid);
869  COMPARE_SCALAR_FIELD(child_relid);
870  COMPARE_SCALAR_FIELD(parent_reltype);
871  COMPARE_SCALAR_FIELD(child_reltype);
872  COMPARE_NODE_FIELD(translated_vars);
873  COMPARE_SCALAR_FIELD(parent_reloid);
874 
875  return true;
876 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalArrayCoerceExpr ( const ArrayCoerceExpr a,
const ArrayCoerceExpr b 
)
static

Definition at line 493 of file equalfuncs.c.

References arg, COMPARE_COERCIONFORM_FIELD, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

494 {
496  COMPARE_SCALAR_FIELD(elemfuncid);
497  COMPARE_SCALAR_FIELD(resulttype);
498  COMPARE_SCALAR_FIELD(resulttypmod);
499  COMPARE_SCALAR_FIELD(resultcollid);
500  COMPARE_SCALAR_FIELD(isExplicit);
501  COMPARE_COERCIONFORM_FIELD(coerceformat);
502  COMPARE_LOCATION_FIELD(location);
503 
504  return true;
505 }
#define COMPARE_COERCIONFORM_FIELD(fldname)
Definition: equalfuncs.c:88
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalArrayExpr ( const ArrayExpr a,
const ArrayExpr b 
)
static

Definition at line 562 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

563 {
564  COMPARE_SCALAR_FIELD(array_typeid);
565  COMPARE_SCALAR_FIELD(array_collid);
566  COMPARE_SCALAR_FIELD(element_typeid);
567  COMPARE_NODE_FIELD(elements);
568  COMPARE_SCALAR_FIELD(multidims);
569  COMPARE_LOCATION_FIELD(location);
570 
571  return true;
572 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalArrayRef ( const ArrayRef a,
const ArrayRef b 
)
static

Definition at line 247 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

248 {
249  COMPARE_SCALAR_FIELD(refarraytype);
250  COMPARE_SCALAR_FIELD(refelemtype);
251  COMPARE_SCALAR_FIELD(reftypmod);
252  COMPARE_SCALAR_FIELD(refcollid);
253  COMPARE_NODE_FIELD(refupperindexpr);
254  COMPARE_NODE_FIELD(reflowerindexpr);
255  COMPARE_NODE_FIELD(refexpr);
256  COMPARE_NODE_FIELD(refassgnexpr);
257 
258  return true;
259 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalAStar ( const A_Star a,
const A_Star b 
)
static

Definition at line 2281 of file equalfuncs.c.

Referenced by equal().

2282 {
2283  return true;
2284 }
static bool _equalBooleanTest ( const BooleanTest a,
const BooleanTest b 
)
static

Definition at line 662 of file equalfuncs.c.

References arg, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

663 {
665  COMPARE_SCALAR_FIELD(booltesttype);
666  COMPARE_LOCATION_FIELD(location);
667 
668  return true;
669 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalBoolExpr ( const BoolExpr a,
const BoolExpr b 
)
static

Definition at line 391 of file equalfuncs.c.

References generate_unaccent_rules::args, boolop(), COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

392 {
395  COMPARE_LOCATION_FIELD(location);
396 
397  return true;
398 }
Datum boolop(PG_FUNCTION_ARGS)
Definition: _int_bool.c:420
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCaseExpr ( const CaseExpr a,
const CaseExpr b 
)
static

Definition at line 529 of file equalfuncs.c.

References arg, generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

530 {
531  COMPARE_SCALAR_FIELD(casetype);
532  COMPARE_SCALAR_FIELD(casecollid);
535  COMPARE_NODE_FIELD(defresult);
536  COMPARE_LOCATION_FIELD(location);
537 
538  return true;
539 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCaseTestExpr ( const CaseTestExpr a,
const CaseTestExpr b 
)
static

Definition at line 552 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD.

Referenced by equal().

553 {
554  COMPARE_SCALAR_FIELD(typeId);
555  COMPARE_SCALAR_FIELD(typeMod);
556  COMPARE_SCALAR_FIELD(collation);
557 
558  return true;
559 }
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCaseWhen ( const CaseWhen a,
const CaseWhen b 
)
static

Definition at line 542 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_NODE_FIELD.

Referenced by equal().

543 {
544  COMPARE_NODE_FIELD(expr);
545  COMPARE_NODE_FIELD(result);
546  COMPARE_LOCATION_FIELD(location);
547 
548  return true;
549 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalClosePortalStmt ( const ClosePortalStmt a,
const ClosePortalStmt b 
)
static

Definition at line 1148 of file equalfuncs.c.

References COMPARE_STRING_FIELD.

Referenced by equal().

1149 {
1150  COMPARE_STRING_FIELD(portalname);
1151 
1152  return true;
1153 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
static bool _equalClusterStmt ( const ClusterStmt a,
const ClusterStmt b 
)
static

Definition at line 1156 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and verbose.

Referenced by equal().

1157 {
1158  COMPARE_NODE_FIELD(relation);
1159  COMPARE_STRING_FIELD(indexname);
1161 
1162  return true;
1163 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
static int verbose
Definition: pg_basebackup.c:87
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCoalesceExpr ( const CoalesceExpr a,
const CoalesceExpr b 
)
static

Definition at line 600 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

601 {
602  COMPARE_SCALAR_FIELD(coalescetype);
603  COMPARE_SCALAR_FIELD(coalescecollid);
605  COMPARE_LOCATION_FIELD(location);
606 
607  return true;
608 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCoerceToDomain ( const CoerceToDomain a,
const CoerceToDomain b 
)
static

Definition at line 672 of file equalfuncs.c.

References arg, COMPARE_COERCIONFORM_FIELD, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

673 {
675  COMPARE_SCALAR_FIELD(resulttype);
676  COMPARE_SCALAR_FIELD(resulttypmod);
677  COMPARE_SCALAR_FIELD(resultcollid);
678  COMPARE_COERCIONFORM_FIELD(coercionformat);
679  COMPARE_LOCATION_FIELD(location);
680 
681  return true;
682 }
#define COMPARE_COERCIONFORM_FIELD(fldname)
Definition: equalfuncs.c:88
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCoerceToDomainValue ( const CoerceToDomainValue a,
const CoerceToDomainValue b 
)
static

Definition at line 685 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

686 {
687  COMPARE_SCALAR_FIELD(typeId);
688  COMPARE_SCALAR_FIELD(typeMod);
689  COMPARE_SCALAR_FIELD(collation);
690  COMPARE_LOCATION_FIELD(location);
691 
692  return true;
693 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCoerceViaIO ( const CoerceViaIO a,
const CoerceViaIO b 
)
static

Definition at line 481 of file equalfuncs.c.

References arg, COMPARE_COERCIONFORM_FIELD, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

482 {
484  COMPARE_SCALAR_FIELD(resulttype);
485  COMPARE_SCALAR_FIELD(resultcollid);
486  COMPARE_COERCIONFORM_FIELD(coerceformat);
487  COMPARE_LOCATION_FIELD(location);
488 
489  return true;
490 }
#define COMPARE_COERCIONFORM_FIELD(fldname)
Definition: equalfuncs.c:88
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCollateClause ( const CollateClause a,
const CollateClause b 
)
static

Definition at line 2361 of file equalfuncs.c.

References arg, COMPARE_LOCATION_FIELD, and COMPARE_NODE_FIELD.

Referenced by equal().

2362 {
2364  COMPARE_NODE_FIELD(collname);
2365  COMPARE_LOCATION_FIELD(location);
2366 
2367  return true;
2368 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
static bool _equalCollateExpr ( const CollateExpr a,
const CollateExpr b 
)
static

Definition at line 519 of file equalfuncs.c.

References arg, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

520 {
522  COMPARE_SCALAR_FIELD(collOid);
523  COMPARE_LOCATION_FIELD(location);
524 
525  return true;
526 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalColumnDef ( const ColumnDef a,
const ColumnDef b 
)
static

Definition at line 2447 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2448 {
2449  COMPARE_STRING_FIELD(colname);
2450  COMPARE_NODE_FIELD(typeName);
2451  COMPARE_SCALAR_FIELD(inhcount);
2452  COMPARE_SCALAR_FIELD(is_local);
2453  COMPARE_SCALAR_FIELD(is_not_null);
2454  COMPARE_SCALAR_FIELD(is_from_type);
2455  COMPARE_SCALAR_FIELD(storage);
2456  COMPARE_NODE_FIELD(raw_default);
2457  COMPARE_NODE_FIELD(cooked_default);
2458  COMPARE_NODE_FIELD(collClause);
2459  COMPARE_SCALAR_FIELD(collOid);
2460  COMPARE_NODE_FIELD(constraints);
2461  COMPARE_NODE_FIELD(fdwoptions);
2462  COMPARE_LOCATION_FIELD(location);
2463 
2464  return true;
2465 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalColumnRef ( const ColumnRef a,
const ColumnRef b 
)
static

Definition at line 2236 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_NODE_FIELD.

Referenced by equal().

2237 {
2238  COMPARE_NODE_FIELD(fields);
2239  COMPARE_LOCATION_FIELD(location);
2240 
2241  return true;
2242 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCommentStmt ( const CommentStmt a,
const CommentStmt b 
)
static

Definition at line 1243 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1244 {
1245  COMPARE_SCALAR_FIELD(objtype);
1246  COMPARE_NODE_FIELD(objname);
1247  COMPARE_NODE_FIELD(objargs);
1248  COMPARE_STRING_FIELD(comment);
1249 
1250  return true;
1251 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCommonTableExpr ( const CommonTableExpr a,
const CommonTableExpr b 
)
static

Definition at line 2676 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2677 {
2678  COMPARE_STRING_FIELD(ctename);
2679  COMPARE_NODE_FIELD(aliascolnames);
2680  COMPARE_NODE_FIELD(ctequery);
2681  COMPARE_LOCATION_FIELD(location);
2682  COMPARE_SCALAR_FIELD(cterecursive);
2683  COMPARE_SCALAR_FIELD(cterefcount);
2684  COMPARE_NODE_FIELD(ctecolnames);
2685  COMPARE_NODE_FIELD(ctecoltypes);
2686  COMPARE_NODE_FIELD(ctecoltypmods);
2687  COMPARE_NODE_FIELD(ctecolcollations);
2688 
2689  return true;
2690 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCompositeTypeStmt ( const CompositeTypeStmt a,
const CompositeTypeStmt b 
)
static

Definition at line 1456 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1457 {
1458  COMPARE_NODE_FIELD(typevar);
1459  COMPARE_NODE_FIELD(coldeflist);
1460 
1461  return true;
1462 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalConst ( const Const a,
const Const b 
)
static

Definition at line 157 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_SCALAR_FIELD, Const::constbyval, Const::constisnull, Const::constlen, Const::constvalue, and datumIsEqual().

Referenced by equal().

158 {
159  COMPARE_SCALAR_FIELD(consttype);
160  COMPARE_SCALAR_FIELD(consttypmod);
161  COMPARE_SCALAR_FIELD(constcollid);
162  COMPARE_SCALAR_FIELD(constlen);
163  COMPARE_SCALAR_FIELD(constisnull);
164  COMPARE_SCALAR_FIELD(constbyval);
165  COMPARE_LOCATION_FIELD(location);
166 
167  /*
168  * We treat all NULL constants of the same type as equal. Someday this
169  * might need to change? But datumIsEqual doesn't work on nulls, so...
170  */
171  if (a->constisnull)
172  return true;
173  return datumIsEqual(a->constvalue, b->constvalue,
174  a->constbyval, a->constlen);
175 }
Datum constvalue
Definition: primnodes.h:174
bool constbyval
Definition: primnodes.h:177
bool datumIsEqual(Datum value1, Datum value2, bool typByVal, int typLen)
Definition: datum.c:219
int constlen
Definition: primnodes.h:173
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
bool constisnull
Definition: primnodes.h:175
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalConstraint ( const Constraint a,
const Constraint b 
)
static

Definition at line 2468 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2469 {
2470  COMPARE_SCALAR_FIELD(contype);
2471  COMPARE_STRING_FIELD(conname);
2472  COMPARE_SCALAR_FIELD(deferrable);
2473  COMPARE_SCALAR_FIELD(initdeferred);
2474  COMPARE_LOCATION_FIELD(location);
2475  COMPARE_SCALAR_FIELD(is_no_inherit);
2476  COMPARE_NODE_FIELD(raw_expr);
2477  COMPARE_STRING_FIELD(cooked_expr);
2478  COMPARE_NODE_FIELD(keys);
2479  COMPARE_NODE_FIELD(exclusions);
2481  COMPARE_STRING_FIELD(indexname);
2482  COMPARE_STRING_FIELD(indexspace);
2483  COMPARE_STRING_FIELD(access_method);
2484  COMPARE_NODE_FIELD(where_clause);
2485  COMPARE_NODE_FIELD(pktable);
2486  COMPARE_NODE_FIELD(fk_attrs);
2487  COMPARE_NODE_FIELD(pk_attrs);
2488  COMPARE_SCALAR_FIELD(fk_matchtype);
2489  COMPARE_SCALAR_FIELD(fk_upd_action);
2490  COMPARE_SCALAR_FIELD(fk_del_action);
2491  COMPARE_NODE_FIELD(old_conpfeqop);
2492  COMPARE_SCALAR_FIELD(old_pktable_oid);
2493  COMPARE_SCALAR_FIELD(skip_validation);
2494  COMPARE_SCALAR_FIELD(initially_valid);
2495 
2496  return true;
2497 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalConstraintsSetStmt ( const ConstraintsSetStmt a,
const ConstraintsSetStmt b 
)
static

Definition at line 2016 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2017 {
2018  COMPARE_NODE_FIELD(constraints);
2019  COMPARE_SCALAR_FIELD(deferred);
2020 
2021  return true;
2022 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalConvertRowtypeExpr ( const ConvertRowtypeExpr a,
const ConvertRowtypeExpr b 
)
static

Definition at line 508 of file equalfuncs.c.

References arg, COMPARE_COERCIONFORM_FIELD, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

509 {
511  COMPARE_SCALAR_FIELD(resulttype);
512  COMPARE_COERCIONFORM_FIELD(convertformat);
513  COMPARE_LOCATION_FIELD(location);
514 
515  return true;
516 }
#define COMPARE_COERCIONFORM_FIELD(fldname)
Definition: equalfuncs.c:88
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCopyStmt ( const CopyStmt a,
const CopyStmt b 
)
static

Definition at line 1166 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and filename.

Referenced by equal().

1167 {
1168  COMPARE_NODE_FIELD(relation);
1169  COMPARE_NODE_FIELD(query);
1170  COMPARE_NODE_FIELD(attlist);
1171  COMPARE_SCALAR_FIELD(is_from);
1172  COMPARE_SCALAR_FIELD(is_program);
1175 
1176  return true;
1177 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static char * filename
Definition: pg_dumpall.c:84
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateAmStmt ( const CreateAmStmt a,
const CreateAmStmt b 
)
static

Definition at line 1903 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1904 {
1905  COMPARE_STRING_FIELD(amname);
1906  COMPARE_NODE_FIELD(handler_name);
1907  COMPARE_SCALAR_FIELD(amtype);
1908 
1909  return true;
1910 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateCastStmt ( const CreateCastStmt a,
const CreateCastStmt b 
)
static

Definition at line 2059 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2060 {
2061  COMPARE_NODE_FIELD(sourcetype);
2062  COMPARE_NODE_FIELD(targettype);
2063  COMPARE_NODE_FIELD(func);
2064  COMPARE_SCALAR_FIELD(context);
2065  COMPARE_SCALAR_FIELD(inout);
2066 
2067  return true;
2068 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateConversionStmt ( const CreateConversionStmt a,
const CreateConversionStmt b 
)
static

Definition at line 2047 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2048 {
2049  COMPARE_NODE_FIELD(conversion_name);
2050  COMPARE_STRING_FIELD(for_encoding_name);
2051  COMPARE_STRING_FIELD(to_encoding_name);
2052  COMPARE_NODE_FIELD(func_name);
2053  COMPARE_SCALAR_FIELD(def);
2054 
2055  return true;
2056 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreatedbStmt ( const CreatedbStmt a,
const CreatedbStmt b 
)
static

Definition at line 1575 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and dbname.

Referenced by equal().

1576 {
1579 
1580  return true;
1581 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
char * dbname
Definition: streamutil.c:41
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateDomainStmt ( const CreateDomainStmt a,
const CreateDomainStmt b 
)
static

Definition at line 1517 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1518 {
1519  COMPARE_NODE_FIELD(domainname);
1520  COMPARE_NODE_FIELD(typeName);
1521  COMPARE_NODE_FIELD(collClause);
1522  COMPARE_NODE_FIELD(constraints);
1523 
1524  return true;
1525 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateEnumStmt ( const CreateEnumStmt a,
const CreateEnumStmt b 
)
static

Definition at line 1465 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1466 {
1467  COMPARE_NODE_FIELD(typeName);
1468  COMPARE_NODE_FIELD(vals);
1469 
1470  return true;
1471 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateEventTrigStmt ( const CreateEventTrigStmt a,
const CreateEventTrigStmt b 
)
static

Definition at line 1934 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1935 {
1936  COMPARE_STRING_FIELD(trigname);
1937  COMPARE_STRING_FIELD(eventname);
1938  COMPARE_NODE_FIELD(whenclause);
1939  COMPARE_NODE_FIELD(funcname);
1940 
1941  return true;
1942 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateExtensionStmt ( const CreateExtensionStmt a,
const CreateExtensionStmt b 
)
static

Definition at line 1762 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1763 {
1764  COMPARE_STRING_FIELD(extname);
1765  COMPARE_SCALAR_FIELD(if_not_exists);
1767 
1768  return true;
1769 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateFdwStmt ( const CreateFdwStmt a,
const CreateFdwStmt b 
)
static

Definition at line 1793 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1794 {
1795  COMPARE_STRING_FIELD(fdwname);
1796  COMPARE_NODE_FIELD(func_options);
1798 
1799  return true;
1800 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateForeignServerStmt ( const CreateForeignServerStmt a,
const CreateForeignServerStmt b 
)
static

Definition at line 1813 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1814 {
1815  COMPARE_STRING_FIELD(servername);
1816  COMPARE_STRING_FIELD(servertype);
1817  COMPARE_STRING_FIELD(version);
1818  COMPARE_STRING_FIELD(fdwname);
1820 
1821  return true;
1822 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateForeignTableStmt ( const CreateForeignTableStmt a,
const CreateForeignTableStmt b 
)
static

Definition at line 1866 of file equalfuncs.c.

References _equalCreateStmt(), CreateForeignTableStmt::base, COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1867 {
1868  if (!_equalCreateStmt(&a->base, &b->base))
1869  return false;
1870 
1871  COMPARE_STRING_FIELD(servername);
1873 
1874  return true;
1875 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateStmt(const CreateStmt *a, const CreateStmt *b)
Definition: equalfuncs.c:1180
static bool _equalCreateFunctionStmt ( const CreateFunctionStmt a,
const CreateFunctionStmt b 
)
static

Definition at line 1303 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1304 {
1305  COMPARE_SCALAR_FIELD(replace);
1306  COMPARE_NODE_FIELD(funcname);
1307  COMPARE_NODE_FIELD(parameters);
1308  COMPARE_NODE_FIELD(returnType);
1310  COMPARE_NODE_FIELD(withClause);
1311 
1312  return true;
1313 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateOpClassItem ( const CreateOpClassItem a,
const CreateOpClassItem b 
)
static

Definition at line 1541 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and name.

Referenced by equal().

1542 {
1543  COMPARE_SCALAR_FIELD(itemtype);
1546  COMPARE_SCALAR_FIELD(number);
1547  COMPARE_NODE_FIELD(order_family);
1548  COMPARE_NODE_FIELD(class_args);
1549  COMPARE_NODE_FIELD(storedtype);
1550 
1551  return true;
1552 }
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateOpClassStmt ( const CreateOpClassStmt a,
const CreateOpClassStmt b 
)
static

Definition at line 1528 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1529 {
1530  COMPARE_NODE_FIELD(opclassname);
1531  COMPARE_NODE_FIELD(opfamilyname);
1532  COMPARE_STRING_FIELD(amname);
1533  COMPARE_NODE_FIELD(datatype);
1534  COMPARE_NODE_FIELD(items);
1535  COMPARE_SCALAR_FIELD(isDefault);
1536 
1537  return true;
1538 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateOpFamilyStmt ( const CreateOpFamilyStmt a,
const CreateOpFamilyStmt b 
)
static

Definition at line 1555 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1556 {
1557  COMPARE_NODE_FIELD(opfamilyname);
1558  COMPARE_STRING_FIELD(amname);
1559 
1560  return true;
1561 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreatePLangStmt ( const CreatePLangStmt a,
const CreatePLangStmt b 
)
static

Definition at line 1954 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1955 {
1956  COMPARE_SCALAR_FIELD(replace);
1957  COMPARE_STRING_FIELD(plname);
1958  COMPARE_NODE_FIELD(plhandler);
1959  COMPARE_NODE_FIELD(plinline);
1960  COMPARE_NODE_FIELD(plvalidator);
1961  COMPARE_SCALAR_FIELD(pltrusted);
1962 
1963  return true;
1964 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreatePolicyStmt ( const CreatePolicyStmt a,
const CreatePolicyStmt b 
)
static

Definition at line 2198 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2199 {
2200  COMPARE_STRING_FIELD(policy_name);
2201  COMPARE_NODE_FIELD(table);
2202  COMPARE_STRING_FIELD(cmd_name);
2203  COMPARE_SCALAR_FIELD(permissive);
2204  COMPARE_NODE_FIELD(roles);
2205  COMPARE_NODE_FIELD(qual);
2206  COMPARE_NODE_FIELD(with_check);
2207 
2208  return true;
2209 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreatePublicationStmt ( const CreatePublicationStmt a,
const CreatePublicationStmt b 
)
static

Definition at line 2140 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2142 {
2143  COMPARE_STRING_FIELD(pubname);
2145  COMPARE_NODE_FIELD(tables);
2146  COMPARE_SCALAR_FIELD(for_all_tables);
2147 
2148  return true;
2149 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateRangeStmt ( const CreateRangeStmt a,
const CreateRangeStmt b 
)
static

Definition at line 1474 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1475 {
1476  COMPARE_NODE_FIELD(typeName);
1477  COMPARE_NODE_FIELD(params);
1478 
1479  return true;
1480 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateRoleStmt ( const CreateRoleStmt a,
const CreateRoleStmt b 
)
static

Definition at line 1967 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1968 {
1969  COMPARE_SCALAR_FIELD(stmt_type);
1970  COMPARE_STRING_FIELD(role);
1972 
1973  return true;
1974 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateSchemaStmt ( const CreateSchemaStmt a,
const CreateSchemaStmt b 
)
static

Definition at line 2036 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2037 {
2038  COMPARE_STRING_FIELD(schemaname);
2039  COMPARE_NODE_FIELD(authrole);
2040  COMPARE_NODE_FIELD(schemaElts);
2041  COMPARE_SCALAR_FIELD(if_not_exists);
2042 
2043  return true;
2044 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateSeqStmt ( const CreateSeqStmt a,
const CreateSeqStmt b 
)
static

Definition at line 1670 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1671 {
1672  COMPARE_NODE_FIELD(sequence);
1674  COMPARE_SCALAR_FIELD(ownerId);
1675  COMPARE_SCALAR_FIELD(if_not_exists);
1676 
1677  return true;
1678 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateStmt ( const CreateStmt a,
const CreateStmt b 
)
static

Definition at line 1180 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by _equalCreateForeignTableStmt(), and equal().

1181 {
1182  COMPARE_NODE_FIELD(relation);
1183  COMPARE_NODE_FIELD(tableElts);
1184  COMPARE_NODE_FIELD(inhRelations);
1185  COMPARE_NODE_FIELD(partspec);
1186  COMPARE_NODE_FIELD(partbound);
1187  COMPARE_NODE_FIELD(ofTypename);
1188  COMPARE_NODE_FIELD(constraints);
1190  COMPARE_SCALAR_FIELD(oncommit);
1191  COMPARE_STRING_FIELD(tablespacename);
1192  COMPARE_SCALAR_FIELD(if_not_exists);
1193 
1194  return true;
1195 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateSubscriptionStmt ( const CreateSubscriptionStmt a,
const CreateSubscriptionStmt b 
)
static

Definition at line 2165 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2167 {
2168  COMPARE_STRING_FIELD(subname);
2169  COMPARE_STRING_FIELD(conninfo);
2170  COMPARE_NODE_FIELD(publication);
2172 
2173  return true;
2174 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateTableAsStmt ( const CreateTableAsStmt a,
const CreateTableAsStmt b 
)
static

Definition at line 1630 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1631 {
1632  COMPARE_NODE_FIELD(query);
1633  COMPARE_NODE_FIELD(into);
1634  COMPARE_SCALAR_FIELD(relkind);
1635  COMPARE_SCALAR_FIELD(is_select_into);
1636  COMPARE_SCALAR_FIELD(if_not_exists);
1637 
1638  return true;
1639 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateTableSpaceStmt ( const CreateTableSpaceStmt a,
const CreateTableSpaceStmt b 
)
static

Definition at line 1718 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1719 {
1720  COMPARE_STRING_FIELD(tablespacename);
1721  COMPARE_NODE_FIELD(owner);
1722  COMPARE_STRING_FIELD(location);
1724 
1725  return true;
1726 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalCreateTransformStmt ( const CreateTransformStmt a,
const CreateTransformStmt b 
)
static

Definition at line 1891 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1892 {
1893  COMPARE_SCALAR_FIELD(replace);
1894  COMPARE_NODE_FIELD(type_name);
1895  COMPARE_STRING_FIELD(lang);
1896  COMPARE_NODE_FIELD(fromsql);
1897  COMPARE_NODE_FIELD(tosql);
1898 
1899  return true;
1900 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateTrigStmt ( const CreateTrigStmt a,
const CreateTrigStmt b 
)
static

Definition at line 1913 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1914 {
1915  COMPARE_STRING_FIELD(trigname);
1916  COMPARE_NODE_FIELD(relation);
1917  COMPARE_NODE_FIELD(funcname);
1919  COMPARE_SCALAR_FIELD(row);
1920  COMPARE_SCALAR_FIELD(timing);
1921  COMPARE_SCALAR_FIELD(events);
1922  COMPARE_NODE_FIELD(columns);
1923  COMPARE_NODE_FIELD(whenClause);
1924  COMPARE_SCALAR_FIELD(isconstraint);
1925  COMPARE_NODE_FIELD(transitionRels);
1926  COMPARE_SCALAR_FIELD(deferrable);
1927  COMPARE_SCALAR_FIELD(initdeferred);
1928  COMPARE_NODE_FIELD(constrrel);
1929 
1930  return true;
1931 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalCreateUserMappingStmt ( const CreateUserMappingStmt a,
const CreateUserMappingStmt b 
)
static

Definition at line 1836 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and user.

Referenced by equal().

1837 {
1839  COMPARE_STRING_FIELD(servername);
1841 
1842  return true;
1843 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static char * user
Definition: pg_regress.c:90
static bool _equalCurrentOfExpr ( const CurrentOfExpr a,
const CurrentOfExpr b 
)
static

Definition at line 707 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

708 {
709  COMPARE_SCALAR_FIELD(cvarno);
710  COMPARE_STRING_FIELD(cursor_name);
711  COMPARE_SCALAR_FIELD(cursor_param);
712 
713  return true;
714 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDeallocateStmt ( const DeallocateStmt a,
const DeallocateStmt b 
)
static

Definition at line 2090 of file equalfuncs.c.

References COMPARE_STRING_FIELD, and name.

Referenced by equal().

2091 {
2093 
2094  return true;
2095 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
static bool _equalDeclareCursorStmt ( const DeclareCursorStmt a,
const DeclareCursorStmt b 
)
static

Definition at line 1138 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1139 {
1140  COMPARE_STRING_FIELD(portalname);
1142  COMPARE_NODE_FIELD(query);
1143 
1144  return true;
1145 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDefElem ( const DefElem a,
const DefElem b 
)
static

Definition at line 2500 of file equalfuncs.c.

References arg, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2501 {
2502  COMPARE_STRING_FIELD(defnamespace);
2503  COMPARE_STRING_FIELD(defname);
2505  COMPARE_SCALAR_FIELD(defaction);
2506  COMPARE_LOCATION_FIELD(location);
2507 
2508  return true;
2509 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDefineStmt ( const DefineStmt a,
const DefineStmt b 
)
static

Definition at line 1207 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1208 {
1209  COMPARE_SCALAR_FIELD(kind);
1210  COMPARE_SCALAR_FIELD(oldstyle);
1211  COMPARE_NODE_FIELD(defnames);
1213  COMPARE_NODE_FIELD(definition);
1214  COMPARE_SCALAR_FIELD(if_not_exists);
1215 
1216  return true;
1217 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDeleteStmt ( const DeleteStmt a,
const DeleteStmt b 
)
static

Definition at line 981 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

982 {
983  COMPARE_NODE_FIELD(relation);
984  COMPARE_NODE_FIELD(usingClause);
985  COMPARE_NODE_FIELD(whereClause);
986  COMPARE_NODE_FIELD(returningList);
987  COMPARE_NODE_FIELD(withClause);
988 
989  return true;
990 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalDiscardStmt ( const DiscardStmt a,
const DiscardStmt b 
)
static

Definition at line 1710 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD.

Referenced by equal().

1711 {
1712  COMPARE_SCALAR_FIELD(target);
1713 
1714  return true;
1715 }
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDistinctExpr ( const DistinctExpr a,
const DistinctExpr b 
)
static

Definition at line 315 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and OpExpr::opfuncid.

Referenced by equal().

316 {
317  COMPARE_SCALAR_FIELD(opno);
318 
319  /*
320  * Special-case opfuncid: it is allowable for it to differ if one node
321  * contains zero and the other doesn't. This just means that the one node
322  * isn't as far along in the parse/plan pipeline and hasn't had the
323  * opfuncid cache filled yet.
324  */
325  if (a->opfuncid != b->opfuncid &&
326  a->opfuncid != 0 &&
327  b->opfuncid != 0)
328  return false;
329 
330  COMPARE_SCALAR_FIELD(opresulttype);
331  COMPARE_SCALAR_FIELD(opretset);
332  COMPARE_SCALAR_FIELD(opcollid);
333  COMPARE_SCALAR_FIELD(inputcollid);
335  COMPARE_LOCATION_FIELD(location);
336 
337  return true;
338 }
Oid opfuncid
Definition: primnodes.h:474
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDoStmt ( const DoStmt a,
const DoStmt b 
)
static

Definition at line 1336 of file equalfuncs.c.

References generate_unaccent_rules::args, and COMPARE_NODE_FIELD.

Referenced by equal().

1337 {
1339 
1340  return true;
1341 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalDropdbStmt ( const DropdbStmt a,
const DropdbStmt b 
)
static

Definition at line 1602 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and dbname.

Referenced by equal().

1603 {
1605  COMPARE_SCALAR_FIELD(missing_ok);
1606 
1607  return true;
1608 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
char * dbname
Definition: streamutil.c:41
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDropOwnedStmt ( const DropOwnedStmt a,
const DropOwnedStmt b 
)
static

Definition at line 2098 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2099 {
2100  COMPARE_NODE_FIELD(roles);
2101  COMPARE_SCALAR_FIELD(behavior);
2102 
2103  return true;
2104 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDropRoleStmt ( const DropRoleStmt a,
const DropRoleStmt b 
)
static

Definition at line 1997 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1998 {
1999  COMPARE_NODE_FIELD(roles);
2000  COMPARE_SCALAR_FIELD(missing_ok);
2001 
2002  return true;
2003 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDropStmt ( const DropStmt a,
const DropStmt b 
)
static

Definition at line 1220 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1221 {
1222  COMPARE_NODE_FIELD(objects);
1224  COMPARE_SCALAR_FIELD(removeType);
1225  COMPARE_SCALAR_FIELD(behavior);
1226  COMPARE_SCALAR_FIELD(missing_ok);
1227  COMPARE_SCALAR_FIELD(concurrent);
1228 
1229  return true;
1230 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDropSubscriptionStmt ( const DropSubscriptionStmt a,
const DropSubscriptionStmt b 
)
static

Definition at line 2187 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2189 {
2190  COMPARE_STRING_FIELD(subname);
2191  COMPARE_SCALAR_FIELD(drop_slot);
2192  COMPARE_SCALAR_FIELD(missing_ok);
2193 
2194  return true;
2195 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDropTableSpaceStmt ( const DropTableSpaceStmt a,
const DropTableSpaceStmt b 
)
static

Definition at line 1729 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1730 {
1731  COMPARE_STRING_FIELD(tablespacename);
1732  COMPARE_SCALAR_FIELD(missing_ok);
1733 
1734  return true;
1735 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalDropUserMappingStmt ( const DropUserMappingStmt a,
const DropUserMappingStmt b 
)
static

Definition at line 1856 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and user.

Referenced by equal().

1857 {
1859  COMPARE_STRING_FIELD(servername);
1860  COMPARE_SCALAR_FIELD(missing_ok);
1861 
1862  return true;
1863 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static char * user
Definition: pg_regress.c:90
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalExecuteStmt ( const ExecuteStmt a,
const ExecuteStmt b 
)
static

Definition at line 2081 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

2082 {
2084  COMPARE_NODE_FIELD(params);
2085 
2086  return true;
2087 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalExplainStmt ( const ExplainStmt a,
const ExplainStmt b 
)
static

Definition at line 1621 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1622 {
1623  COMPARE_NODE_FIELD(query);
1625 
1626  return true;
1627 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalExtensibleNode ( const ExtensibleNode a,
const ExtensibleNode b 
)
static

Definition at line 895 of file equalfuncs.c.

References COMPARE_STRING_FIELD, ExtensibleNode::extnodename, GetExtensibleNodeMethods(), and ExtensibleNodeMethods::nodeEqual.

Referenced by equal().

896 {
897  const ExtensibleNodeMethods *methods;
898 
899  COMPARE_STRING_FIELD(extnodename);
900 
901  /* At this point, we know extnodename is the same for both nodes. */
902  methods = GetExtensibleNodeMethods(a->extnodename, false);
903 
904  /* compare the private fields */
905  if (!methods->nodeEqual(a, b))
906  return false;
907 
908  return true;
909 }
bool(* nodeEqual)(const struct ExtensibleNode *a, const struct ExtensibleNode *b)
Definition: extensible.h:66
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * extnodename
Definition: extensible.h:35
const ExtensibleNodeMethods * GetExtensibleNodeMethods(const char *extnodename, bool missing_ok)
Definition: extensible.c:125
static bool _equalFetchStmt ( const FetchStmt a,
const FetchStmt b 
)
static

Definition at line 1266 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1267 {
1268  COMPARE_SCALAR_FIELD(direction);
1269  COMPARE_SCALAR_FIELD(howMany);
1270  COMPARE_STRING_FIELD(portalname);
1271  COMPARE_SCALAR_FIELD(ismove);
1272 
1273  return true;
1274 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalFieldSelect ( const FieldSelect a,
const FieldSelect b 
)
static

Definition at line 445 of file equalfuncs.c.

References arg, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

446 {
448  COMPARE_SCALAR_FIELD(fieldnum);
449  COMPARE_SCALAR_FIELD(resulttype);
450  COMPARE_SCALAR_FIELD(resulttypmod);
451  COMPARE_SCALAR_FIELD(resultcollid);
452 
453  return true;
454 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalFieldStore ( const FieldStore a,
const FieldStore b 
)
static

Definition at line 457 of file equalfuncs.c.

References arg, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

458 {
460  COMPARE_NODE_FIELD(newvals);
461  COMPARE_NODE_FIELD(fieldnums);
462  COMPARE_SCALAR_FIELD(resulttype);
463 
464  return true;
465 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalFromExpr ( const FromExpr a,
const FromExpr b 
)
static

Definition at line 764 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

765 {
766  COMPARE_NODE_FIELD(fromlist);
767  COMPARE_NODE_FIELD(quals);
768 
769  return true;
770 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalFuncCall ( const FuncCall a,
const FuncCall b 
)
static

Definition at line 2264 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2265 {
2266  COMPARE_NODE_FIELD(funcname);
2268  COMPARE_NODE_FIELD(agg_order);
2269  COMPARE_NODE_FIELD(agg_filter);
2270  COMPARE_SCALAR_FIELD(agg_within_group);
2271  COMPARE_SCALAR_FIELD(agg_star);
2272  COMPARE_SCALAR_FIELD(agg_distinct);
2273  COMPARE_SCALAR_FIELD(func_variadic);
2274  COMPARE_NODE_FIELD(over);
2275  COMPARE_LOCATION_FIELD(location);
2276 
2277  return true;
2278 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalFuncExpr ( const FuncExpr a,
const FuncExpr b 
)
static

Definition at line 262 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_COERCIONFORM_FIELD, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

263 {
264  COMPARE_SCALAR_FIELD(funcid);
265  COMPARE_SCALAR_FIELD(funcresulttype);
266  COMPARE_SCALAR_FIELD(funcretset);
267  COMPARE_SCALAR_FIELD(funcvariadic);
268  COMPARE_COERCIONFORM_FIELD(funcformat);
269  COMPARE_SCALAR_FIELD(funccollid);
270  COMPARE_SCALAR_FIELD(inputcollid);
272  COMPARE_LOCATION_FIELD(location);
273 
274  return true;
275 }
#define COMPARE_COERCIONFORM_FIELD(fldname)
Definition: equalfuncs.c:88
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalFunctionParameter ( const FunctionParameter a,
const FunctionParameter b 
)
static

Definition at line 1316 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

1317 {
1319  COMPARE_NODE_FIELD(argType);
1320  COMPARE_SCALAR_FIELD(mode);
1321  COMPARE_NODE_FIELD(defexpr);
1322 
1323  return true;
1324 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalFuncWithArgs ( const FuncWithArgs a,
const FuncWithArgs b 
)
static

Definition at line 1098 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

1099 {
1100  COMPARE_NODE_FIELD(funcname);
1101  COMPARE_NODE_FIELD(funcargs);
1102 
1103  return true;
1104 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalGrantRoleStmt ( const GrantRoleStmt a,
const GrantRoleStmt b 
)
static

Definition at line 1116 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1117 {
1118  COMPARE_NODE_FIELD(granted_roles);
1119  COMPARE_NODE_FIELD(grantee_roles);
1120  COMPARE_SCALAR_FIELD(is_grant);
1121  COMPARE_SCALAR_FIELD(admin_opt);
1122  COMPARE_NODE_FIELD(grantor);
1123  COMPARE_SCALAR_FIELD(behavior);
1124 
1125  return true;
1126 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalGrantStmt ( const GrantStmt a,
const GrantStmt b 
)
static

Definition at line 1083 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1084 {
1085  COMPARE_SCALAR_FIELD(is_grant);
1086  COMPARE_SCALAR_FIELD(targtype);
1087  COMPARE_SCALAR_FIELD(objtype);
1088  COMPARE_NODE_FIELD(objects);
1089  COMPARE_NODE_FIELD(privileges);
1090  COMPARE_NODE_FIELD(grantees);
1091  COMPARE_SCALAR_FIELD(grant_option);
1092  COMPARE_SCALAR_FIELD(behavior);
1093 
1094  return true;
1095 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalGroupingFunc ( const GroupingFunc a,
const GroupingFunc b 
)
static

Definition at line 215 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

216 {
218 
219  /*
220  * We must not compare the refs or cols field
221  */
222 
223  COMPARE_SCALAR_FIELD(agglevelsup);
224  COMPARE_LOCATION_FIELD(location);
225 
226  return true;
227 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalGroupingSet ( const GroupingSet a,
const GroupingSet b 
)
static

Definition at line 2606 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2607 {
2608  COMPARE_SCALAR_FIELD(kind);
2609  COMPARE_NODE_FIELD(content);
2610  COMPARE_LOCATION_FIELD(location);
2611 
2612  return true;
2613 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalImportForeignSchemaStmt ( const ImportForeignSchemaStmt a,
const ImportForeignSchemaStmt b 
)
static

Definition at line 1878 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1879 {
1880  COMPARE_STRING_FIELD(server_name);
1881  COMPARE_STRING_FIELD(remote_schema);
1882  COMPARE_STRING_FIELD(local_schema);
1883  COMPARE_SCALAR_FIELD(list_type);
1884  COMPARE_NODE_FIELD(table_list);
1886 
1887  return true;
1888 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalIndexElem ( const IndexElem a,
const IndexElem b 
)
static

Definition at line 2433 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

2434 {
2436  COMPARE_NODE_FIELD(expr);
2437  COMPARE_STRING_FIELD(indexcolname);
2438  COMPARE_NODE_FIELD(collation);
2439  COMPARE_NODE_FIELD(opclass);
2440  COMPARE_SCALAR_FIELD(ordering);
2441  COMPARE_SCALAR_FIELD(nulls_ordering);
2442 
2443  return true;
2444 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalIndexStmt ( const IndexStmt a,
const IndexStmt b 
)
static

Definition at line 1277 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1278 {
1279  COMPARE_STRING_FIELD(idxname);
1280  COMPARE_NODE_FIELD(relation);
1281  COMPARE_STRING_FIELD(accessMethod);
1282  COMPARE_STRING_FIELD(tableSpace);
1283  COMPARE_NODE_FIELD(indexParams);
1285  COMPARE_NODE_FIELD(whereClause);
1286  COMPARE_NODE_FIELD(excludeOpNames);
1287  COMPARE_STRING_FIELD(idxcomment);
1288  COMPARE_SCALAR_FIELD(indexOid);
1289  COMPARE_SCALAR_FIELD(oldNode);
1290  COMPARE_SCALAR_FIELD(unique);
1291  COMPARE_SCALAR_FIELD(primary);
1292  COMPARE_SCALAR_FIELD(isconstraint);
1293  COMPARE_SCALAR_FIELD(deferrable);
1294  COMPARE_SCALAR_FIELD(initdeferred);
1295  COMPARE_SCALAR_FIELD(transformed);
1296  COMPARE_SCALAR_FIELD(concurrent);
1297  COMPARE_SCALAR_FIELD(if_not_exists);
1298 
1299  return true;
1300 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalInferClause ( const InferClause a,
const InferClause b 
)
static

Definition at line 2653 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2654 {
2655  COMPARE_NODE_FIELD(indexElems);
2656  COMPARE_NODE_FIELD(whereClause);
2657  COMPARE_STRING_FIELD(conname);
2658  COMPARE_LOCATION_FIELD(location);
2659 
2660  return true;
2661 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalInferenceElem ( const InferenceElem a,
const InferenceElem b 
)
static

Definition at line 717 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

718 {
719  COMPARE_NODE_FIELD(expr);
720  COMPARE_SCALAR_FIELD(infercollid);
721  COMPARE_SCALAR_FIELD(inferopclass);
722 
723  return true;
724 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalInsertStmt ( const InsertStmt a,
const InsertStmt b 
)
static

Definition at line 968 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

969 {
970  COMPARE_NODE_FIELD(relation);
971  COMPARE_NODE_FIELD(cols);
972  COMPARE_NODE_FIELD(selectStmt);
973  COMPARE_NODE_FIELD(onConflictClause);
974  COMPARE_NODE_FIELD(returningList);
975  COMPARE_NODE_FIELD(withClause);
976 
977  return true;
978 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalIntoClause ( const IntoClause a,
const IntoClause b 
)
static

Definition at line 120 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

121 {
122  COMPARE_NODE_FIELD(rel);
123  COMPARE_NODE_FIELD(colNames);
125  COMPARE_SCALAR_FIELD(onCommit);
126  COMPARE_STRING_FIELD(tableSpaceName);
127  COMPARE_NODE_FIELD(viewQuery);
128  COMPARE_SCALAR_FIELD(skipData);
129 
130  return true;
131 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalJoinExpr ( const JoinExpr a,
const JoinExpr b 
)
static

Definition at line 749 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

750 {
751  COMPARE_SCALAR_FIELD(jointype);
752  COMPARE_SCALAR_FIELD(isNatural);
753  COMPARE_NODE_FIELD(larg);
754  COMPARE_NODE_FIELD(rarg);
755  COMPARE_NODE_FIELD(usingClause);
756  COMPARE_NODE_FIELD(quals);
757  COMPARE_NODE_FIELD(alias);
758  COMPARE_SCALAR_FIELD(rtindex);
759 
760  return true;
761 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalList ( const List a,
const List b 
)
static

Definition at line 2781 of file equalfuncs.c.

References Assert, COMPARE_SCALAR_FIELD, elog, equal(), ERROR, forboth, length(), lfirst, lfirst_int, lfirst_oid, NULL, T_IntList, T_List, T_OidList, and List::type.

Referenced by equal().

2782 {
2783  const ListCell *item_a;
2784  const ListCell *item_b;
2785 
2786  /*
2787  * Try to reject by simple scalar checks before grovelling through all the
2788  * list elements...
2789  */
2790  COMPARE_SCALAR_FIELD(type);
2792 
2793  /*
2794  * We place the switch outside the loop for the sake of efficiency; this
2795  * may not be worth doing...
2796  */
2797  switch (a->type)
2798  {
2799  case T_List:
2800  forboth(item_a, a, item_b, b)
2801  {
2802  if (!equal(lfirst(item_a), lfirst(item_b)))
2803  return false;
2804  }
2805  break;
2806  case T_IntList:
2807  forboth(item_a, a, item_b, b)
2808  {
2809  if (lfirst_int(item_a) != lfirst_int(item_b))
2810  return false;
2811  }
2812  break;
2813  case T_OidList:
2814  forboth(item_a, a, item_b, b)
2815  {
2816  if (lfirst_oid(item_a) != lfirst_oid(item_b))
2817  return false;
2818  }
2819  break;
2820  default:
2821  elog(ERROR, "unrecognized list node type: %d",
2822  (int) a->type);
2823  return false; /* keep compiler quiet */
2824  }
2825 
2826  /*
2827  * If we got here, we should have run out of elements of both lists
2828  */
2829  Assert(item_a == NULL);
2830  Assert(item_b == NULL);
2831 
2832  return true;
2833 }
int length(const List *list)
Definition: list.c:1271
#define forboth(cell1, list1, cell2, list2)
Definition: pg_list.h:174
bool equal(const void *a, const void *b)
Definition: equalfuncs.c:2870
#define ERROR
Definition: elog.h:43
#define lfirst_int(lc)
Definition: pg_list.h:107
Definition: nodes.h:295
#define NULL
Definition: c.h:226
#define Assert(condition)
Definition: c.h:671
#define lfirst(lc)
Definition: pg_list.h:106
NodeTag type
Definition: pg_list.h:47
#define elog
Definition: elog.h:219
#define lfirst_oid(lc)
Definition: pg_list.h:108
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalListenStmt ( const ListenStmt a,
const ListenStmt b 
)
static

Definition at line 1430 of file equalfuncs.c.

References COMPARE_STRING_FIELD.

Referenced by equal().

1431 {
1432  COMPARE_STRING_FIELD(conditionname);
1433 
1434  return true;
1435 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
static bool _equalLoadStmt ( const LoadStmt a,
const LoadStmt b 
)
static

Definition at line 1509 of file equalfuncs.c.

References COMPARE_STRING_FIELD, and filename.

Referenced by equal().

1510 {
1512 
1513  return true;
1514 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
static char * filename
Definition: pg_dumpall.c:84
static bool _equalLockingClause ( const LockingClause a,
const LockingClause b 
)
static

Definition at line 2512 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2513 {
2514  COMPARE_NODE_FIELD(lockedRels);
2515  COMPARE_SCALAR_FIELD(strength);
2516  COMPARE_SCALAR_FIELD(waitPolicy);
2517  COMPARE_LOCATION_FIELD(location);
2518 
2519  return true;
2520 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalLockStmt ( const LockStmt a,
const LockStmt b 
)
static

Definition at line 2006 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2007 {
2008  COMPARE_NODE_FIELD(relations);
2009  COMPARE_SCALAR_FIELD(mode);
2010  COMPARE_SCALAR_FIELD(nowait);
2011 
2012  return true;
2013 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalMinMaxExpr ( const MinMaxExpr a,
const MinMaxExpr b 
)
static

Definition at line 611 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

612 {
613  COMPARE_SCALAR_FIELD(minmaxtype);
614  COMPARE_SCALAR_FIELD(minmaxcollid);
615  COMPARE_SCALAR_FIELD(inputcollid);
618  COMPARE_LOCATION_FIELD(location);
619 
620  return true;
621 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalMultiAssignRef ( const MultiAssignRef a,
const MultiAssignRef b 
)
static

Definition at line 2326 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2327 {
2328  COMPARE_NODE_FIELD(source);
2329  COMPARE_SCALAR_FIELD(colno);
2330  COMPARE_SCALAR_FIELD(ncolumns);
2331 
2332  return true;
2333 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalNamedArgExpr ( const NamedArgExpr a,
const NamedArgExpr b 
)
static

Definition at line 278 of file equalfuncs.c.

References arg, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

279 {
282  COMPARE_SCALAR_FIELD(argnumber);
283  COMPARE_LOCATION_FIELD(location);
284 
285  return true;
286 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalNotifyStmt ( const NotifyStmt a,
const NotifyStmt b 
)
static

Definition at line 1421 of file equalfuncs.c.

References COMPARE_STRING_FIELD.

Referenced by equal().

1422 {
1423  COMPARE_STRING_FIELD(conditionname);
1424  COMPARE_STRING_FIELD(payload);
1425 
1426  return true;
1427 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
static bool _equalNullIfExpr ( const NullIfExpr a,
const NullIfExpr b 
)
static

Definition at line 341 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and OpExpr::opfuncid.

Referenced by equal().

342 {
343  COMPARE_SCALAR_FIELD(opno);
344 
345  /*
346  * Special-case opfuncid: it is allowable for it to differ if one node
347  * contains zero and the other doesn't. This just means that the one node
348  * isn't as far along in the parse/plan pipeline and hasn't had the
349  * opfuncid cache filled yet.
350  */
351  if (a->opfuncid != b->opfuncid &&
352  a->opfuncid != 0 &&
353  b->opfuncid != 0)
354  return false;
355 
356  COMPARE_SCALAR_FIELD(opresulttype);
357  COMPARE_SCALAR_FIELD(opretset);
358  COMPARE_SCALAR_FIELD(opcollid);
359  COMPARE_SCALAR_FIELD(inputcollid);
361  COMPARE_LOCATION_FIELD(location);
362 
363  return true;
364 }
Oid opfuncid
Definition: primnodes.h:474
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalNullTest ( const NullTest a,
const NullTest b 
)
static

Definition at line 651 of file equalfuncs.c.

References arg, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

652 {
654  COMPARE_SCALAR_FIELD(nulltesttype);
655  COMPARE_SCALAR_FIELD(argisrow);
656  COMPARE_LOCATION_FIELD(location);
657 
658  return true;
659 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalOnConflictClause ( const OnConflictClause a,
const OnConflictClause b 
)
static

Definition at line 2664 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2665 {
2666  COMPARE_SCALAR_FIELD(action);
2667  COMPARE_NODE_FIELD(infer);
2668  COMPARE_NODE_FIELD(targetList);
2669  COMPARE_NODE_FIELD(whereClause);
2670  COMPARE_LOCATION_FIELD(location);
2671 
2672  return true;
2673 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalOnConflictExpr ( const OnConflictExpr a,
const OnConflictExpr b 
)
static

Definition at line 773 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

774 {
775  COMPARE_SCALAR_FIELD(action);
776  COMPARE_NODE_FIELD(arbiterElems);
777  COMPARE_NODE_FIELD(arbiterWhere);
778  COMPARE_SCALAR_FIELD(constraint);
779  COMPARE_NODE_FIELD(onConflictSet);
780  COMPARE_NODE_FIELD(onConflictWhere);
781  COMPARE_SCALAR_FIELD(exclRelIndex);
782  COMPARE_NODE_FIELD(exclRelTlist);
783 
784  return true;
785 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalOpExpr ( const OpExpr a,
const OpExpr b 
)
static

Definition at line 289 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and OpExpr::opfuncid.

Referenced by equal().

290 {
291  COMPARE_SCALAR_FIELD(opno);
292 
293  /*
294  * Special-case opfuncid: it is allowable for it to differ if one node
295  * contains zero and the other doesn't. This just means that the one node
296  * isn't as far along in the parse/plan pipeline and hasn't had the
297  * opfuncid cache filled yet.
298  */
299  if (a->opfuncid != b->opfuncid &&
300  a->opfuncid != 0 &&
301  b->opfuncid != 0)
302  return false;
303 
304  COMPARE_SCALAR_FIELD(opresulttype);
305  COMPARE_SCALAR_FIELD(opretset);
306  COMPARE_SCALAR_FIELD(opcollid);
307  COMPARE_SCALAR_FIELD(inputcollid);
309  COMPARE_LOCATION_FIELD(location);
310 
311  return true;
312 }
Oid opfuncid
Definition: primnodes.h:474
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalParam ( const Param a,
const Param b 
)
static

Definition at line 178 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

179 {
180  COMPARE_SCALAR_FIELD(paramkind);
181  COMPARE_SCALAR_FIELD(paramid);
182  COMPARE_SCALAR_FIELD(paramtype);
183  COMPARE_SCALAR_FIELD(paramtypmod);
184  COMPARE_SCALAR_FIELD(paramcollid);
185  COMPARE_LOCATION_FIELD(location);
186 
187  return true;
188 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalParamRef ( const ParamRef a,
const ParamRef b 
)
static

Definition at line 2245 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2246 {
2247  COMPARE_SCALAR_FIELD(number);
2248  COMPARE_LOCATION_FIELD(location);
2249 
2250  return true;
2251 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalPartitionBoundSpec ( const PartitionBoundSpec a,
const PartitionBoundSpec b 
)
static

Definition at line 2746 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2747 {
2748  COMPARE_SCALAR_FIELD(strategy);
2749  COMPARE_NODE_FIELD(listdatums);
2750  COMPARE_NODE_FIELD(lowerdatums);
2751  COMPARE_NODE_FIELD(upperdatums);
2752  COMPARE_LOCATION_FIELD(location);
2753 
2754  return true;
2755 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalPartitionCmd ( const PartitionCmd a,
const PartitionCmd b 
)
static

Definition at line 2768 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and name.

Referenced by equal().

2769 {
2771  COMPARE_NODE_FIELD(bound);
2772 
2773  return true;
2774 }
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalPartitionElem ( const PartitionElem a,
const PartitionElem b 
)
static

Definition at line 2734 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

2735 {
2737  COMPARE_NODE_FIELD(expr);
2738  COMPARE_NODE_FIELD(collation);
2739  COMPARE_NODE_FIELD(opclass);
2740  COMPARE_LOCATION_FIELD(location);
2741 
2742  return true;
2743 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalPartitionRangeDatum ( const PartitionRangeDatum a,
const PartitionRangeDatum b 
)
static

Definition at line 2758 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and value.

Referenced by equal().

2759 {
2760  COMPARE_SCALAR_FIELD(infinite);
2762  COMPARE_LOCATION_FIELD(location);
2763 
2764  return true;
2765 }
static struct @76 value
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalPartitionSpec ( const PartitionSpec a,
const PartitionSpec b 
)
static

Definition at line 2724 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2725 {
2726  COMPARE_STRING_FIELD(strategy);
2727  COMPARE_NODE_FIELD(partParams);
2728  COMPARE_LOCATION_FIELD(location);
2729 
2730  return true;
2731 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalPathKey ( const PathKey a,
const PathKey b 
)
static

Definition at line 792 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD.

Referenced by equal().

793 {
794  /* We assume pointer equality is sufficient to compare the eclasses */
795  COMPARE_SCALAR_FIELD(pk_eclass);
796  COMPARE_SCALAR_FIELD(pk_opfamily);
797  COMPARE_SCALAR_FIELD(pk_strategy);
798  COMPARE_SCALAR_FIELD(pk_nulls_first);
799 
800  return true;
801 }
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalPlaceHolderInfo ( const PlaceHolderInfo a,
const PlaceHolderInfo b 
)
static

Definition at line 879 of file equalfuncs.c.

References COMPARE_BITMAPSET_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

880 {
881  COMPARE_SCALAR_FIELD(phid);
882  COMPARE_NODE_FIELD(ph_var); /* should be redundant */
883  COMPARE_BITMAPSET_FIELD(ph_eval_at);
884  COMPARE_BITMAPSET_FIELD(ph_lateral);
885  COMPARE_BITMAPSET_FIELD(ph_needed);
886  COMPARE_SCALAR_FIELD(ph_width);
887 
888  return true;
889 }
#define COMPARE_BITMAPSET_FIELD(fldname)
Definition: equalfuncs.c:59
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalPlaceHolderVar ( const PlaceHolderVar a,
const PlaceHolderVar b 
)
static

Definition at line 823 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD.

Referenced by equal().

824 {
825  /*
826  * We intentionally do not compare phexpr. Two PlaceHolderVars with the
827  * same ID and levelsup should be considered equal even if the contained
828  * expressions have managed to mutate to different states. This will
829  * happen during final plan construction when there are nested PHVs, since
830  * the inner PHV will get replaced by a Param in some copies of the outer
831  * PHV. Another way in which it can happen is that initplan sublinks
832  * could get replaced by differently-numbered Params when sublink folding
833  * is done. (The end result of such a situation would be some
834  * unreferenced initplans, which is annoying but not really a problem.) On
835  * the same reasoning, there is no need to examine phrels.
836  *
837  * COMPARE_NODE_FIELD(phexpr);
838  *
839  * COMPARE_BITMAPSET_FIELD(phrels);
840  */
841  COMPARE_SCALAR_FIELD(phid);
842  COMPARE_SCALAR_FIELD(phlevelsup);
843 
844  return true;
845 }
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalPrepareStmt ( const PrepareStmt a,
const PrepareStmt b 
)
static

Definition at line 2071 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

2072 {
2074  COMPARE_NODE_FIELD(argtypes);
2075  COMPARE_NODE_FIELD(query);
2076 
2077  return true;
2078 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalQuery ( const Query a,
const Query b 
)
static

Definition at line 916 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

917 {
918  COMPARE_SCALAR_FIELD(commandType);
919  COMPARE_SCALAR_FIELD(querySource);
920  /* we intentionally ignore queryId, since it might not be set */
921  COMPARE_SCALAR_FIELD(canSetTag);
922  COMPARE_NODE_FIELD(utilityStmt);
923  COMPARE_SCALAR_FIELD(resultRelation);
924  COMPARE_SCALAR_FIELD(hasAggs);
925  COMPARE_SCALAR_FIELD(hasWindowFuncs);
926  COMPARE_SCALAR_FIELD(hasTargetSRFs);
927  COMPARE_SCALAR_FIELD(hasSubLinks);
928  COMPARE_SCALAR_FIELD(hasDistinctOn);
929  COMPARE_SCALAR_FIELD(hasRecursive);
930  COMPARE_SCALAR_FIELD(hasModifyingCTE);
931  COMPARE_SCALAR_FIELD(hasForUpdate);
932  COMPARE_SCALAR_FIELD(hasRowSecurity);
933  COMPARE_NODE_FIELD(cteList);
934  COMPARE_NODE_FIELD(rtable);
935  COMPARE_NODE_FIELD(jointree);
936  COMPARE_NODE_FIELD(targetList);
937  COMPARE_NODE_FIELD(onConflict);
938  COMPARE_NODE_FIELD(returningList);
939  COMPARE_NODE_FIELD(groupClause);
940  COMPARE_NODE_FIELD(groupingSets);
941  COMPARE_NODE_FIELD(havingQual);
942  COMPARE_NODE_FIELD(windowClause);
943  COMPARE_NODE_FIELD(distinctClause);
944  COMPARE_NODE_FIELD(sortClause);
945  COMPARE_NODE_FIELD(limitOffset);
946  COMPARE_NODE_FIELD(limitCount);
947  COMPARE_NODE_FIELD(rowMarks);
948  COMPARE_NODE_FIELD(setOperations);
949  COMPARE_NODE_FIELD(constraintDeps);
950  COMPARE_NODE_FIELD(withCheckOptions);
951  COMPARE_LOCATION_FIELD(stmt_location);
952  COMPARE_LOCATION_FIELD(stmt_len);
953 
954  return true;
955 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRangeFunction ( const RangeFunction a,
const RangeFunction b 
)
static

Definition at line 2408 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and functions.

Referenced by equal().

2409 {
2410  COMPARE_SCALAR_FIELD(lateral);
2411  COMPARE_SCALAR_FIELD(ordinality);
2412  COMPARE_SCALAR_FIELD(is_rowsfrom);
2414  COMPARE_NODE_FIELD(alias);
2415  COMPARE_NODE_FIELD(coldeflist);
2416 
2417  return true;
2418 }
static const struct fns functions
Definition: regcomp.c:301
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRangeSubselect ( const RangeSubselect a,
const RangeSubselect b 
)
static

Definition at line 2398 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2399 {
2400  COMPARE_SCALAR_FIELD(lateral);
2401  COMPARE_NODE_FIELD(subquery);
2402  COMPARE_NODE_FIELD(alias);
2403 
2404  return true;
2405 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRangeTableSample ( const RangeTableSample a,
const RangeTableSample b 
)
static

Definition at line 2421 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, and COMPARE_NODE_FIELD.

Referenced by equal().

2422 {
2423  COMPARE_NODE_FIELD(relation);
2424  COMPARE_NODE_FIELD(method);
2426  COMPARE_NODE_FIELD(repeatable);
2427  COMPARE_LOCATION_FIELD(location);
2428 
2429  return true;
2430 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalRangeTblEntry ( const RangeTblEntry a,
const RangeTblEntry b 
)
static

Definition at line 2523 of file equalfuncs.c.

References COMPARE_BITMAPSET_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and functions.

Referenced by equal().

2524 {
2525  COMPARE_SCALAR_FIELD(rtekind);
2526  COMPARE_SCALAR_FIELD(relid);
2527  COMPARE_SCALAR_FIELD(relkind);
2528  COMPARE_NODE_FIELD(tablesample);
2529  COMPARE_NODE_FIELD(subquery);
2530  COMPARE_SCALAR_FIELD(security_barrier);
2531  COMPARE_SCALAR_FIELD(jointype);
2532  COMPARE_NODE_FIELD(joinaliasvars);
2534  COMPARE_SCALAR_FIELD(funcordinality);
2535  COMPARE_NODE_FIELD(values_lists);
2536  COMPARE_STRING_FIELD(ctename);
2537  COMPARE_SCALAR_FIELD(ctelevelsup);
2538  COMPARE_SCALAR_FIELD(self_reference);
2539  COMPARE_NODE_FIELD(coltypes);
2540  COMPARE_NODE_FIELD(coltypmods);
2541  COMPARE_NODE_FIELD(colcollations);
2542  COMPARE_NODE_FIELD(alias);
2543  COMPARE_NODE_FIELD(eref);
2544  COMPARE_SCALAR_FIELD(lateral);
2545  COMPARE_SCALAR_FIELD(inh);
2546  COMPARE_SCALAR_FIELD(inFromCl);
2547  COMPARE_SCALAR_FIELD(requiredPerms);
2548  COMPARE_SCALAR_FIELD(checkAsUser);
2549  COMPARE_BITMAPSET_FIELD(selectedCols);
2550  COMPARE_BITMAPSET_FIELD(insertedCols);
2551  COMPARE_BITMAPSET_FIELD(updatedCols);
2552  COMPARE_NODE_FIELD(securityQuals);
2553 
2554  return true;
2555 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_BITMAPSET_FIELD(fldname)
Definition: equalfuncs.c:59
static const struct fns functions
Definition: regcomp.c:301
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRangeTblFunction ( const RangeTblFunction a,
const RangeTblFunction b 
)
static

Definition at line 2558 of file equalfuncs.c.

References COMPARE_BITMAPSET_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2559 {
2560  COMPARE_NODE_FIELD(funcexpr);
2561  COMPARE_SCALAR_FIELD(funccolcount);
2562  COMPARE_NODE_FIELD(funccolnames);
2563  COMPARE_NODE_FIELD(funccoltypes);
2564  COMPARE_NODE_FIELD(funccoltypmods);
2565  COMPARE_NODE_FIELD(funccolcollations);
2566  COMPARE_BITMAPSET_FIELD(funcparams);
2567 
2568  return true;
2569 }
#define COMPARE_BITMAPSET_FIELD(fldname)
Definition: equalfuncs.c:59
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRangeTblRef ( const RangeTblRef a,
const RangeTblRef b 
)
static

Definition at line 741 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD.

Referenced by equal().

742 {
743  COMPARE_SCALAR_FIELD(rtindex);
744 
745  return true;
746 }
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRangeVar ( const RangeVar a,
const RangeVar b 
)
static

Definition at line 106 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

107 {
108  COMPARE_STRING_FIELD(catalogname);
109  COMPARE_STRING_FIELD(schemaname);
110  COMPARE_STRING_FIELD(relname);
112  COMPARE_SCALAR_FIELD(relpersistence);
113  COMPARE_NODE_FIELD(alias);
114  COMPARE_LOCATION_FIELD(location);
115 
116  return true;
117 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRawStmt ( const RawStmt a,
const RawStmt b 
)
static

Definition at line 958 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_NODE_FIELD.

Referenced by equal().

959 {
960  COMPARE_NODE_FIELD(stmt);
961  COMPARE_LOCATION_FIELD(stmt_location);
962  COMPARE_LOCATION_FIELD(stmt_len);
963 
964  return true;
965 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalReassignOwnedStmt ( const ReassignOwnedStmt a,
const ReassignOwnedStmt b 
)
static

Definition at line 2107 of file equalfuncs.c.

References COMPARE_NODE_FIELD.

Referenced by equal().

2108 {
2109  COMPARE_NODE_FIELD(roles);
2110  COMPARE_NODE_FIELD(newrole);
2111 
2112  return true;
2113 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
static bool _equalRefreshMatViewStmt ( const RefreshMatViewStmt a,
const RefreshMatViewStmt b 
)
static

Definition at line 1642 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1643 {
1644  COMPARE_SCALAR_FIELD(concurrent);
1645  COMPARE_SCALAR_FIELD(skipData);
1646  COMPARE_NODE_FIELD(relation);
1647 
1648  return true;
1649 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalReindexStmt ( const ReindexStmt a,
const ReindexStmt b 
)
static

Definition at line 2025 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

2026 {
2027  COMPARE_SCALAR_FIELD(kind);
2028  COMPARE_NODE_FIELD(relation);
2031 
2032  return true;
2033 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRelabelType ( const RelabelType a,
const RelabelType b 
)
static

Definition at line 468 of file equalfuncs.c.

References arg, COMPARE_COERCIONFORM_FIELD, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

469 {
471  COMPARE_SCALAR_FIELD(resulttype);
472  COMPARE_SCALAR_FIELD(resulttypmod);
473  COMPARE_SCALAR_FIELD(resultcollid);
474  COMPARE_COERCIONFORM_FIELD(relabelformat);
475  COMPARE_LOCATION_FIELD(location);
476 
477  return true;
478 }
#define COMPARE_COERCIONFORM_FIELD(fldname)
Definition: equalfuncs.c:88
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRenameStmt ( const RenameStmt a,
const RenameStmt b 
)
static

Definition at line 1344 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1345 {
1346  COMPARE_SCALAR_FIELD(renameType);
1347  COMPARE_SCALAR_FIELD(relationType);
1348  COMPARE_NODE_FIELD(relation);
1349  COMPARE_NODE_FIELD(object);
1350  COMPARE_NODE_FIELD(objarg);
1351  COMPARE_STRING_FIELD(subname);
1352  COMPARE_STRING_FIELD(newname);
1353  COMPARE_SCALAR_FIELD(behavior);
1354  COMPARE_SCALAR_FIELD(missing_ok);
1355 
1356  return true;
1357 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalReplicaIdentityStmt ( const ReplicaIdentityStmt a,
const ReplicaIdentityStmt b 
)
static

Definition at line 1652 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

1653 {
1654  COMPARE_SCALAR_FIELD(identity_type);
1656 
1657  return true;
1658 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalResTarget ( const ResTarget a,
const ResTarget b 
)
static

Definition at line 2315 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_STRING_FIELD, name, and val.

Referenced by equal().

2316 {
2318  COMPARE_NODE_FIELD(indirection);
2320  COMPARE_LOCATION_FIELD(location);
2321 
2322  return true;
2323 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
const char * name
Definition: encode.c:521
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
long val
Definition: informix.c:689
static bool _equalRestrictInfo ( const RestrictInfo a,
const RestrictInfo b 
)
static

Definition at line 804 of file equalfuncs.c.

References COMPARE_BITMAPSET_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

805 {
806  COMPARE_NODE_FIELD(clause);
807  COMPARE_SCALAR_FIELD(is_pushed_down);
808  COMPARE_SCALAR_FIELD(outerjoin_delayed);
809  COMPARE_SCALAR_FIELD(security_level);
810  COMPARE_BITMAPSET_FIELD(required_relids);
811  COMPARE_BITMAPSET_FIELD(outer_relids);
812  COMPARE_BITMAPSET_FIELD(nullable_relids);
813 
814  /*
815  * We ignore all the remaining fields, since they may not be set yet, and
816  * should be derivable from the clause anyway.
817  */
818 
819  return true;
820 }
#define COMPARE_BITMAPSET_FIELD(fldname)
Definition: equalfuncs.c:59
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRoleSpec ( const RoleSpec a,
const RoleSpec b 
)
static

Definition at line 2704 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

2705 {
2706  COMPARE_SCALAR_FIELD(roletype);
2707  COMPARE_STRING_FIELD(rolename);
2708  COMPARE_LOCATION_FIELD(location);
2709 
2710  return true;
2711 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRowCompareExpr ( const RowCompareExpr a,
const RowCompareExpr b 
)
static

Definition at line 587 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

588 {
589  COMPARE_SCALAR_FIELD(rctype);
590  COMPARE_NODE_FIELD(opnos);
591  COMPARE_NODE_FIELD(opfamilies);
592  COMPARE_NODE_FIELD(inputcollids);
593  COMPARE_NODE_FIELD(largs);
594  COMPARE_NODE_FIELD(rargs);
595 
596  return true;
597 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRowExpr ( const RowExpr a,
const RowExpr b 
)
static

Definition at line 575 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_COERCIONFORM_FIELD, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

576 {
578  COMPARE_SCALAR_FIELD(row_typeid);
579  COMPARE_COERCIONFORM_FIELD(row_format);
580  COMPARE_NODE_FIELD(colnames);
581  COMPARE_LOCATION_FIELD(location);
582 
583  return true;
584 }
#define COMPARE_COERCIONFORM_FIELD(fldname)
Definition: equalfuncs.c:88
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRowMarkClause ( const RowMarkClause a,
const RowMarkClause b 
)
static

Definition at line 2632 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD.

Referenced by equal().

2633 {
2634  COMPARE_SCALAR_FIELD(rti);
2635  COMPARE_SCALAR_FIELD(strength);
2636  COMPARE_SCALAR_FIELD(waitPolicy);
2637  COMPARE_SCALAR_FIELD(pushedDown);
2638 
2639  return true;
2640 }
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalRuleStmt ( const RuleStmt a,
const RuleStmt b 
)
static

Definition at line 1407 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1408 {
1409  COMPARE_NODE_FIELD(relation);
1410  COMPARE_STRING_FIELD(rulename);
1411  COMPARE_NODE_FIELD(whereClause);
1412  COMPARE_SCALAR_FIELD(event);
1413  COMPARE_SCALAR_FIELD(instead);
1414  COMPARE_NODE_FIELD(actions);
1415  COMPARE_SCALAR_FIELD(replace);
1416 
1417  return true;
1418 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalScalarArrayOpExpr ( const ScalarArrayOpExpr a,
const ScalarArrayOpExpr b 
)
static

Definition at line 367 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and ScalarArrayOpExpr::opfuncid.

Referenced by equal().

368 {
369  COMPARE_SCALAR_FIELD(opno);
370 
371  /*
372  * Special-case opfuncid: it is allowable for it to differ if one node
373  * contains zero and the other doesn't. This just means that the one node
374  * isn't as far along in the parse/plan pipeline and hasn't had the
375  * opfuncid cache filled yet.
376  */
377  if (a->opfuncid != b->opfuncid &&
378  a->opfuncid != 0 &&
379  b->opfuncid != 0)
380  return false;
381 
382  COMPARE_SCALAR_FIELD(useOr);
383  COMPARE_SCALAR_FIELD(inputcollid);
385  COMPARE_LOCATION_FIELD(location);
386 
387  return true;
388 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSecLabelStmt ( const SecLabelStmt a,
const SecLabelStmt b 
)
static

Definition at line 1254 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and label.

Referenced by equal().

1255 {
1256  COMPARE_SCALAR_FIELD(objtype);
1257  COMPARE_NODE_FIELD(objname);
1258  COMPARE_NODE_FIELD(objargs);
1259  COMPARE_STRING_FIELD(provider);
1261 
1262  return true;
1263 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
static char * label
Definition: pg_basebackup.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSelectStmt ( const SelectStmt a,
const SelectStmt b 
)
static

Definition at line 1006 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1007 {
1008  COMPARE_NODE_FIELD(distinctClause);
1009  COMPARE_NODE_FIELD(intoClause);
1010  COMPARE_NODE_FIELD(targetList);
1011  COMPARE_NODE_FIELD(fromClause);
1012  COMPARE_NODE_FIELD(whereClause);
1013  COMPARE_NODE_FIELD(groupClause);
1014  COMPARE_NODE_FIELD(havingClause);
1015  COMPARE_NODE_FIELD(windowClause);
1016  COMPARE_NODE_FIELD(valuesLists);
1017  COMPARE_NODE_FIELD(sortClause);
1018  COMPARE_NODE_FIELD(limitOffset);
1019  COMPARE_NODE_FIELD(limitCount);
1020  COMPARE_NODE_FIELD(lockingClause);
1021  COMPARE_NODE_FIELD(withClause);
1023  COMPARE_SCALAR_FIELD(all);
1024  COMPARE_NODE_FIELD(larg);
1025  COMPARE_NODE_FIELD(rarg);
1026 
1027  return true;
1028 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSetOperationStmt ( const SetOperationStmt a,
const SetOperationStmt b 
)
static

Definition at line 1031 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1032 {
1034  COMPARE_SCALAR_FIELD(all);
1035  COMPARE_NODE_FIELD(larg);
1036  COMPARE_NODE_FIELD(rarg);
1037  COMPARE_NODE_FIELD(colTypes);
1038  COMPARE_NODE_FIELD(colTypmods);
1039  COMPARE_NODE_FIELD(colCollations);
1040  COMPARE_NODE_FIELD(groupClauses);
1041 
1042  return true;
1043 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSetToDefault ( const SetToDefault a,
const SetToDefault b 
)
static

Definition at line 696 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

697 {
698  COMPARE_SCALAR_FIELD(typeId);
699  COMPARE_SCALAR_FIELD(typeMod);
700  COMPARE_SCALAR_FIELD(collation);
701  COMPARE_LOCATION_FIELD(location);
702 
703  return true;
704 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSortBy ( const SortBy a,
const SortBy b 
)
static

Definition at line 2371 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2372 {
2373  COMPARE_NODE_FIELD(node);
2374  COMPARE_SCALAR_FIELD(sortby_dir);
2375  COMPARE_SCALAR_FIELD(sortby_nulls);
2376  COMPARE_NODE_FIELD(useOp);
2377  COMPARE_LOCATION_FIELD(location);
2378 
2379  return true;
2380 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSortGroupClause ( const SortGroupClause a,
const SortGroupClause b 
)
static

Definition at line 2594 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD.

Referenced by equal().

2595 {
2596  COMPARE_SCALAR_FIELD(tleSortGroupRef);
2597  COMPARE_SCALAR_FIELD(eqop);
2598  COMPARE_SCALAR_FIELD(sortop);
2599  COMPARE_SCALAR_FIELD(nulls_first);
2600  COMPARE_SCALAR_FIELD(hashable);
2601 
2602  return true;
2603 }
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSpecialJoinInfo ( const SpecialJoinInfo a,
const SpecialJoinInfo b 
)
static

Definition at line 848 of file equalfuncs.c.

References COMPARE_BITMAPSET_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

849 {
850  COMPARE_BITMAPSET_FIELD(min_lefthand);
851  COMPARE_BITMAPSET_FIELD(min_righthand);
852  COMPARE_BITMAPSET_FIELD(syn_lefthand);
853  COMPARE_BITMAPSET_FIELD(syn_righthand);
854  COMPARE_SCALAR_FIELD(jointype);
855  COMPARE_SCALAR_FIELD(lhs_strict);
856  COMPARE_SCALAR_FIELD(delay_upper_joins);
857  COMPARE_SCALAR_FIELD(semi_can_btree);
858  COMPARE_SCALAR_FIELD(semi_can_hash);
859  COMPARE_NODE_FIELD(semi_operators);
860  COMPARE_NODE_FIELD(semi_rhs_exprs);
861 
862  return true;
863 }
#define COMPARE_BITMAPSET_FIELD(fldname)
Definition: equalfuncs.c:59
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSQLValueFunction ( const SQLValueFunction a,
const SQLValueFunction b 
)
static

Definition at line 624 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

625 {
627  COMPARE_SCALAR_FIELD(type);
628  COMPARE_SCALAR_FIELD(typmod);
629  COMPARE_LOCATION_FIELD(location);
630 
631  return true;
632 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSubLink ( const SubLink a,
const SubLink b 
)
static

Definition at line 401 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

402 {
403  COMPARE_SCALAR_FIELD(subLinkType);
404  COMPARE_SCALAR_FIELD(subLinkId);
405  COMPARE_NODE_FIELD(testexpr);
406  COMPARE_NODE_FIELD(operName);
407  COMPARE_NODE_FIELD(subselect);
408  COMPARE_LOCATION_FIELD(location);
409 
410  return true;
411 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalSubPlan ( const SubPlan a,
const SubPlan b 
)
static

Definition at line 414 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

415 {
416  COMPARE_SCALAR_FIELD(subLinkType);
417  COMPARE_NODE_FIELD(testexpr);
418  COMPARE_NODE_FIELD(paramIds);
419  COMPARE_SCALAR_FIELD(plan_id);
420  COMPARE_STRING_FIELD(plan_name);
421  COMPARE_SCALAR_FIELD(firstColType);
422  COMPARE_SCALAR_FIELD(firstColTypmod);
423  COMPARE_SCALAR_FIELD(firstColCollation);
424  COMPARE_SCALAR_FIELD(useHashTable);
425  COMPARE_SCALAR_FIELD(unknownEqFalse);
426  COMPARE_SCALAR_FIELD(parallel_safe);
427  COMPARE_NODE_FIELD(setParam);
428  COMPARE_NODE_FIELD(parParam);
430  COMPARE_SCALAR_FIELD(startup_cost);
431  COMPARE_SCALAR_FIELD(per_call_cost);
432 
433  return true;
434 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalTableLikeClause ( const TableLikeClause a,
const TableLikeClause b 
)
static

Definition at line 1198 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1199 {
1200  COMPARE_NODE_FIELD(relation);
1202 
1203  return true;
1204 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalTableSampleClause ( const TableSampleClause a,
const TableSampleClause b 
)
static

Definition at line 2572 of file equalfuncs.c.

References generate_unaccent_rules::args, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2573 {
2574  COMPARE_SCALAR_FIELD(tsmhandler);
2576  COMPARE_NODE_FIELD(repeatable);
2577 
2578  return true;
2579 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalTargetEntry ( const TargetEntry a,
const TargetEntry b 
)
static

Definition at line 727 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

728 {
729  COMPARE_NODE_FIELD(expr);
730  COMPARE_SCALAR_FIELD(resno);
731  COMPARE_STRING_FIELD(resname);
732  COMPARE_SCALAR_FIELD(ressortgroupref);
733  COMPARE_SCALAR_FIELD(resorigtbl);
734  COMPARE_SCALAR_FIELD(resorigcol);
735  COMPARE_SCALAR_FIELD(resjunk);
736 
737  return true;
738 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalTransactionStmt ( const TransactionStmt a,
const TransactionStmt b 
)
static

Definition at line 1446 of file equalfuncs.c.

References COMPARE_NODE_FIELD, COMPARE_SCALAR_FIELD, and COMPARE_STRING_FIELD.

Referenced by equal().

1447 {
1448  COMPARE_SCALAR_FIELD(kind);
1450  COMPARE_STRING_FIELD(gid);
1451 
1452  return true;
1453 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalTriggerTransition ( const TriggerTransition a,
const TriggerTransition b 
)
static

Definition at line 2714 of file equalfuncs.c.

References COMPARE_SCALAR_FIELD, COMPARE_STRING_FIELD, and name.

Referenced by equal().

2715 {
2717  COMPARE_SCALAR_FIELD(isNew);
2718  COMPARE_SCALAR_FIELD(isTable);
2719 
2720  return true;
2721 }
#define COMPARE_STRING_FIELD(fldname)
Definition: equalfuncs.c:66
const char * name
Definition: encode.c:521
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalTruncateStmt ( const TruncateStmt a,
const TruncateStmt b 
)
static

Definition at line 1233 of file equalfuncs.c.

References COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

1234 {
1235  COMPARE_NODE_FIELD(relations);
1236  COMPARE_SCALAR_FIELD(restart_seqs);
1237  COMPARE_SCALAR_FIELD(behavior);
1238 
1239  return true;
1240 }
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalTypeCast ( const TypeCast a,
const TypeCast b 
)
static

Definition at line 2351 of file equalfuncs.c.

References arg, COMPARE_LOCATION_FIELD, and COMPARE_NODE_FIELD.

Referenced by equal().

2352 {
2354  COMPARE_NODE_FIELD(typeName);
2355  COMPARE_LOCATION_FIELD(location);
2356 
2357  return true;
2358 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
void * arg
static bool _equalTypeName ( const TypeName a,
const TypeName b 
)
static

Definition at line 2336 of file equalfuncs.c.

References COMPARE_LOCATION_FIELD, COMPARE_NODE_FIELD, and COMPARE_SCALAR_FIELD.

Referenced by equal().

2337 {
2338  COMPARE_NODE_FIELD(names);
2339  COMPARE_SCALAR_FIELD(typeOid);
2340  COMPARE_SCALAR_FIELD(setof);
2341  COMPARE_SCALAR_FIELD(pct_type);
2342  COMPARE_NODE_FIELD(typmods);
2343  COMPARE_SCALAR_FIELD(typemod);
2344  COMPARE_NODE_FIELD(arrayBounds);
2345  COMPARE_LOCATION_FIELD(location);
2346 
2347  return true;
2348 }
#define COMPARE_LOCATION_FIELD(fldname)
Definition: equalfuncs.c:84
#define COMPARE_NODE_FIELD(fldname)
Definition: equalfuncs.c:52
#define COMPARE_SCALAR_FIELD(fldname)
Definition: equalfuncs.c:45
static bool _equalUnlistenStmt ( const UnlistenStmt a,
const UnlistenStmt b 
)
static

Definition at line 1438 of file equalfuncs.c.

References COMPARE_STRING_FIELD.

Referenced by equal().

1439 {
1440  COMPARE_STRING_FIELD(conditionname);
1441 
1442  return true;
1443 }
#define COMPARE_STRING_FIELD(fldname)
Definition: