PostgreSQL Source Code
git master
|
Go to the source code of this file.
Data Structures | |
struct | ScanKeyData |
Macros | |
#define | SK_ISNULL 0x0001 /* sk_argument is NULL */ |
#define | SK_UNARY 0x0002 /* unary operator (not supported!) */ |
#define | SK_ROW_HEADER 0x0004 /* row comparison header (see above) */ |
#define | SK_ROW_MEMBER 0x0008 /* row comparison member (see above) */ |
#define | SK_ROW_END 0x0010 /* last row comparison member */ |
#define | SK_SEARCHARRAY 0x0020 /* scankey represents ScalarArrayOp */ |
#define | SK_SEARCHNULL 0x0040 /* scankey represents "col IS NULL" */ |
#define | SK_SEARCHNOTNULL 0x0080 /* scankey represents "col IS NOT NULL" */ |
#define | SK_ORDER_BY 0x0100 /* scankey is for ORDER BY op */ |
Typedefs | |
typedef struct ScanKeyData | ScanKeyData |
typedef ScanKeyData * | ScanKey |
Functions | |
void | ScanKeyInit (ScanKey entry, AttrNumber attributeNumber, StrategyNumber strategy, RegProcedure procedure, Datum argument) |
void | ScanKeyEntryInitialize (ScanKey entry, int flags, AttrNumber attributeNumber, StrategyNumber strategy, Oid subtype, Oid collation, RegProcedure procedure, Datum argument) |
void | ScanKeyEntryInitializeWithInfo (ScanKey entry, int flags, AttrNumber attributeNumber, StrategyNumber strategy, Oid subtype, Oid collation, FmgrInfo *finfo, Datum argument) |
#define SK_ISNULL 0x0001 /* sk_argument is NULL */ |
Definition at line 115 of file skey.h.
Referenced by _bt_check_rowcompare(), _bt_checkkeys(), _bt_compare(), _bt_compare_scankey_args(), _bt_first(), _bt_fix_scankey_strategy(), _bt_mkscankey(), _bt_preprocess_array_keys(), _hash_checkqual(), _hash_first(), blgetbitmap(), brin_inclusion_consistent(), brin_minmax_consistent(), bringetbitmap(), build_replindex_scan_key(), ExecIndexAdvanceArrayKeys(), ExecIndexBuildScanKeys(), ExecIndexEvalArrayKeys(), ExecIndexEvalRuntimeKeys(), get_actual_variable_range(), gistindex_keytest(), gistrescan(), and spgPrepareScanKeys().
#define SK_ORDER_BY 0x0100 /* scankey is for ORDER BY op */ |
Definition at line 123 of file skey.h.
Referenced by ExecIndexBuildScanKeys().
#define SK_ROW_END 0x0010 /* last row comparison member */ |
Definition at line 119 of file skey.h.
Referenced by _bt_check_rowcompare(), _bt_first(), _bt_fix_scankey_strategy(), and ExecIndexBuildScanKeys().
#define SK_ROW_HEADER 0x0004 /* row comparison header (see above) */ |
Definition at line 117 of file skey.h.
Referenced by _bt_checkkeys(), _bt_first(), _bt_fix_scankey_strategy(), _bt_mark_scankey_required(), _bt_preprocess_array_keys(), _bt_preprocess_keys(), and ExecIndexBuildScanKeys().
#define SK_ROW_MEMBER 0x0008 /* row comparison member (see above) */ |
Definition at line 118 of file skey.h.
Referenced by _bt_check_rowcompare(), _bt_first(), _bt_fix_scankey_strategy(), _bt_mark_scankey_required(), and ExecIndexBuildScanKeys().
#define SK_SEARCHARRAY 0x0020 /* scankey represents ScalarArrayOp */ |
Definition at line 120 of file skey.h.
Referenced by _bt_preprocess_array_keys(), and ExecIndexBuildScanKeys().
#define SK_SEARCHNOTNULL 0x0080 /* scankey represents "col IS NOT NULL" */ |
Definition at line 122 of file skey.h.
Referenced by _bt_checkkeys(), _bt_compare_scankey_args(), _bt_first(), _bt_fix_scankey_strategy(), _bt_preprocess_array_keys(), brin_inclusion_consistent(), brin_minmax_consistent(), ExecIndexBuildScanKeys(), get_actual_variable_range(), gistindex_keytest(), gistrescan(), ScanKeyEntryInitialize(), and spgPrepareScanKeys().
#define SK_SEARCHNULL 0x0040 /* scankey represents "col IS NULL" */ |
Definition at line 121 of file skey.h.
Referenced by _bt_checkkeys(), _bt_compare_scankey_args(), _bt_fix_scankey_strategy(), _bt_preprocess_array_keys(), _bt_preprocess_keys(), brin_inclusion_consistent(), brin_minmax_consistent(), ExecIndexBuildScanKeys(), gistindex_keytest(), gistrescan(), ScanKeyEntryInitialize(), and spgPrepareScanKeys().
#define SK_UNARY 0x0002 /* unary operator (not supported!) */ |
typedef ScanKeyData* ScanKey |
typedef struct ScanKeyData ScanKeyData |
void ScanKeyEntryInitialize | ( | ScanKey | entry, |
int | flags, | ||
AttrNumber | attributeNumber, | ||
StrategyNumber | strategy, | ||
Oid | subtype, | ||
Oid | collation, | ||
RegProcedure | procedure, | ||
Datum | argument | ||
) |
Definition at line 32 of file scankey.c.
References Assert, fmgr_info(), MemSet, RegProcedureIsValid, ScanKeyData::sk_argument, ScanKeyData::sk_attno, ScanKeyData::sk_collation, ScanKeyData::sk_flags, ScanKeyData::sk_func, SK_SEARCHNOTNULL, SK_SEARCHNULL, ScanKeyData::sk_strategy, and ScanKeyData::sk_subtype.
Referenced by _bt_first(), check_exclusion_or_unique_constraint(), ExecIndexBuildScanKeys(), and get_actual_variable_range().
void ScanKeyEntryInitializeWithInfo | ( | ScanKey | entry, |
int | flags, | ||
AttrNumber | attributeNumber, | ||
StrategyNumber | strategy, | ||
Oid | subtype, | ||
Oid | collation, | ||
FmgrInfo * | finfo, | ||
Datum | argument | ||
) |
Definition at line 101 of file scankey.c.
References CurrentMemoryContext, fmgr_info_copy(), ScanKeyData::sk_argument, ScanKeyData::sk_attno, ScanKeyData::sk_collation, ScanKeyData::sk_flags, ScanKeyData::sk_func, ScanKeyData::sk_strategy, and ScanKeyData::sk_subtype.
Referenced by _bt_first(), and _bt_mkscankey().
void ScanKeyInit | ( | ScanKey | entry, |
AttrNumber | attributeNumber, | ||
StrategyNumber | strategy, | ||
RegProcedure | procedure, | ||
Datum | argument | ||
) |
Definition at line 76 of file scankey.c.
References fmgr_info(), InvalidOid, ScanKeyData::sk_argument, ScanKeyData::sk_attno, ScanKeyData::sk_collation, ScanKeyData::sk_flags, ScanKeyData::sk_func, ScanKeyData::sk_strategy, and ScanKeyData::sk_subtype.
Referenced by AfterTriggerSetState(), AlterConstraintNamespaces(), AlterDatabase(), AlterDatabaseOwner(), AlterDomainDropConstraint(), AlterDomainValidateConstraint(), AlterExtensionNamespace(), AlterPolicy(), AlterSeqNamespaces(), AlterSetting(), AlterTableMoveAll(), AlterTableSpaceOptions(), AlterTypeRecurse(), ApplyExtensionUpdates(), ApplySetting(), ATExecAddOf(), ATExecAlterColumnType(), ATExecAlterConstraint(), ATExecAttachPartition(), ATExecDropConstraint(), ATExecDropExpression(), ATExecValidateConstraint(), ATPrepChangePersistence(), AttrDefaultFetch(), build_replindex_scan_key(), change_owner_fix_column_acls(), change_owner_recurse_to_sequences(), changeDependenciesOf(), changeDependenciesOn(), changeDependencyFor(), check_tuple_attribute(), CheckConstraintFetch(), checkSharedDependencies(), ChooseConstraintName(), CloneFkReferenced(), CloneRowTriggersToPartition(), ConstraintNameExists(), ConstraintNameIsUsed(), CopyStatistics(), copyTemplateDependencies(), CountDBSubscriptions(), CreateComments(), CreateInheritance(), CreatePolicy(), CreateSharedComments(), CreateTrigger(), DefineOpClass(), DefineTSConfiguration(), DeleteAttributeTuples(), DeleteComments(), deleteDependencyRecordsFor(), deleteDependencyRecordsForClass(), deleteDependencyRecordsForSpecific(), DeleteInheritsTuple(), DeleteInitPrivs(), deleteOneObject(), DeleteSecurityLabel(), DeleteSharedComments(), DeleteSharedSecurityLabel(), DeleteSystemAttributeTuples(), do_autovacuum(), drop_parent_dependency(), DropClonedTriggersFromPartition(), DropConfigurationMapping(), dropDatabaseDependencies(), DropObjectById(), DropRole(), DropSetting(), DropTableSpace(), EnableDisableTrigger(), enum_endpoint(), enum_range_internal(), EnumValuesDelete(), ExecAlterExtensionStmt(), ExecGrant_Largeobject(), extension_config_remove(), fetch_statentries_for_relation(), find_composite_type_dependencies(), find_inheritance_children(), find_typed_table_dependencies(), findDependentObjects(), get_catalog_object_by_oid(), get_database_oid(), get_db_info(), get_domain_constraint_oid(), get_extension_name(), get_extension_oid(), get_extension_schema(), get_index_constraint(), get_index_ref_constraints(), get_object_address_attrdef(), get_partition_parent_worker(), get_pkey_attnames(), get_primary_key_attnos(), get_relation_constraint_attnos(), get_relation_constraint_oid(), get_relation_idx_constraint_oid(), get_relation_policy_oid(), get_rels_with_domain(), get_tables_to_cluster(), get_tablespace_name(), get_tablespace_oid(), get_trigger_oid(), GetAllTablesPublicationRelations(), GetAllTablesPublications(), getAutoExtensionsOfObject(), GetComment(), GetDatabaseTuple(), GetDatabaseTupleByOid(), GetDefaultOpClass(), getExtensionOfObject(), GetNewOidWithIndex(), getObjectDescription(), getObjectIdentityParts(), getOwnedSequences_internal(), GetParentedForeignKeyRefs(), GetPublicationRelations(), getRelationsInNamespace(), GetSecurityLabel(), GetSharedSecurityLabel(), GetSubscriptionNotReadyRelations(), GetSubscriptionRelations(), has_superclass(), heap_fetch_toast_slice(), heap_truncate_find_FKs(), index_concurrently_swap(), index_update_stats(), IndexSetParentIndex(), inv_getsize(), inv_read(), inv_truncate(), inv_write(), isObjectPinned(), isSharedObjectPinned(), LargeObjectDrop(), LargeObjectExists(), load_domaintype_info(), load_enum_cache_data(), lookup_ts_config_cache(), LookupOpclassInfo(), makeConfigurationDependencies(), MakeConfigurationMapping(), MergeConstraintsIntoExisting(), MergeWithExistingConstraint(), movedb(), myLargeObjectExists(), objectsInSchemaToOids(), pg_extension_config_dump(), pg_extension_ownercheck(), pg_get_constraintdef_worker(), pg_get_serial_sequence(), pg_get_triggerdef_worker(), pg_largeobject_aclmask_snapshot(), pg_largeobject_ownercheck(), RangeDelete(), recordExtensionInitPrivWorker(), recordExtObjInitPriv(), ReindexMultipleTables(), relation_has_policies(), RelationBuildPartitionDesc(), RelationBuildRowSecurity(), RelationBuildRuleLock(), RelationBuildTriggers(), RelationBuildTupleDesc(), RelationGetExclusionInfo(), RelationGetFKeyList(), RelationGetIndexList(), RelationGetStatExtList(), RelationRemoveInheritance(), RemoveAttrDefault(), RemoveAttrDefaultById(), RemoveExtensionById(), RemoveInheritance(), RemovePolicyById(), RemoveRewriteRuleById(), RemoveRoleFromObjectACL(), RemoveRoleFromObjectPolicy(), RemoveStatistics(), RemoveSubscriptionRel(), RemoveTriggerById(), RemoveTSConfigurationById(), rename_policy(), RenameTableSpace(), renametrig(), replorigin_create(), ScanPgRelation(), sepgsql_attribute_post_create(), sepgsql_database_post_create(), sepgsql_proc_post_create(), sepgsql_proc_setattr(), sepgsql_relation_post_create(), sepgsql_relation_setattr(), sepgsql_relation_setattr_extra(), sepgsql_schema_post_create(), sequenceIsOwned(), SetSecurityLabel(), SetSharedSecurityLabel(), shdepChangeDep(), shdepDropDependency(), shdepDropOwned(), shdepReassignOwned(), toast_delete_datum(), toastrel_valueid_exists(), tryAttachPartitionForeignKey(), typeInheritsFrom(), vac_update_datfrozenxid(), validatePartitionedIndex(), and visitDependenciesOf().