PyHash API¶
See also thePyTypeObject.tp_hash
member andHashing of numeric types.
- typePy_hash_t¶
Hash value type: signed integer.
Added in version 3.2.
- typePy_uhash_t¶
Hash value type: unsigned integer.
Added in version 3.2.
- PyHASH_MODULUS¶
TheMersenne prime
P=2**n-1
, used for numeric hash scheme.Added in version 3.13.
- PyHASH_BITS¶
The exponent
n
ofP
inPyHASH_MODULUS
.Added in version 3.13.
- PyHASH_MULTIPLIER¶
Prime multiplier used in string and various other hashes.
Added in version 3.13.
- PyHASH_INF¶
The hash value returned for a positive infinity.
Added in version 3.13.
- PyHASH_IMAG¶
The multiplier used for the imaginary part of a complex number.
Added in version 3.13.
- typePyHash_FuncDef¶
Hash function definition used by
PyHash_GetFuncDef()
.- constchar*name¶
Hash function name (UTF-8 encoded string).
- constinthash_bits¶
Internal size of the hash value in bits.
- constintseed_bits¶
Size of seed input in bits.
Added in version 3.4.
- constchar*name¶
- PyHash_FuncDef*PyHash_GetFuncDef(void)¶
Get the hash function definition.
See also
PEP 456 “Secure and interchangeable hash algorithm”.
Added in version 3.4.
- Py_hash_tPy_HashPointer(constvoid*ptr)¶
Hash a pointer value: process the pointer value as an integer (cast it to
uintptr_t
internally). The pointer is not dereferenced.The function cannot fail: it cannot return
-1
.Added in version 3.13.
- Py_hash_tPyObject_GenericHash(PyObject*obj)¶
Generic hashing function that is meant to be put into a typeobject’s
tp_hash
slot.Its result only depends on the object’s identity.CPython implementation detail: In CPython, it is equivalent to
Py_HashPointer()
.Added in version 3.13.