def versioning_key()

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)