Closed
Description
Feature or enhancement
Proposal:
I'd like to add a quick way to maybe get a str
hash, so that advanced users don't need to reach into the undocumented-but-public PyASCIIObject->hash
.
Py_hash_t PyUnstable_Unicode_GET_CACHED_HASH(PyObject *str)
If the hash of str, as returned by PyObject_Hash
, has been cached and is immediately available, return it.
Otherwise, return -1
without setting an exception.
If str is not a string (that is, if PyUnicode_Check(obj)
is false), the behavior is undefined.
This function never fails with an exception.
Note that there are no guarantees on when a object's hash is cached, and the (non-)existence of a cached hash does not imply that the string has any other properties.
Has this already been discussed elsewhere?
I have already discussed this feature proposal on Discourse
Links to previous discussion of this feature:
https://discuss.python.org/t/82543