@classmethod
def reverse(cls, value, prop, visitor):
    """Like :py:meth:`normalize.visitor.VisitorPattern.apply` but called
        for ``cast`` operations.  The default implementation passes through but
        squashes exceptions, just like apply.
        """
    return None if isinstance(value, (AttributeError, KeyError)) else value
