Returns the current abstract base class cache token.
- The token is an opaque integer identifying the current version of the
- abstract base class cache for virtual subclasses. This number changes
- with every call to :meth:`ABCMeta.register` on any ABC.
+ The token is an opaque object (that supports equality testing) identifying
+ the current version of the abstract base class cache for virtual subclasses.
+ The token changes with every call to :meth:`ABCMeta.register` on any ABC.
.. versionadded:: 3.4
Improved Modules
================
+abc
+---
+
+New function :func:`abc.get_cache_token` can be used to know when to invalidate
+caches that are affected by changes in the object graph. (Contributed
+by Ćukasz Langa in :issue:`16832`.)
aifc
----
def get_cache_token():
"""Returns the current ABC cache token.
- The token is an opaque integer identifying the current version of
- the ABC cache for virtual subclasses. This number changes with
- every call to ``register()`` on any ABC.
+ The token is an opaque object (supporting equality testing) identifying the
+ current version of the ABC cache for virtual subclasses. The token changes
+ with every call to ``register()`` on any ABC.
"""
return ABCMeta._abc_invalidation_counter