in chz/field.py [0:0]
def versioning_key(self) -> tuple[str, ...]:
from chz.tiepin import approx_type_hash
raw_type_key = approx_type_hash(self._raw_type)
if self._default is MISSING:
default_key = ""
elif self._default.__repr__ is not object.__repr__:
default_key = repr(self._default)
else:
default_key = self._default_factory.__class__.__name__
if isinstance(self._default_factory, _MISSING_TYPE):
default_factory_key = ""
else:
# TODO: support lambdas
default_factory_key = (
self._default_factory.__module__ + "." + self._default_factory.__name__
)
return (self._name, raw_type_key, default_key, default_factory_key)