def METHOD_NAME(cls, fn: AnyCallable, signature_namespace: dict[str, Any]) -> Self:
    """Parse a function signature.
    Args:
        fn: Any callable.
        signature_namespace: mapping of names to types for forward reference resolution
    Returns:
        ParsedSignature
    """
    signature = Signature.from_callable(fn)
    fn_type_hints = get_fn_type_hints(fn, namespace=signature_namespace)
    return cls.from_signature(signature, fn_type_hints)