diff --git a/pandas/util/_decorators.py b/pandas/util/_decorators.py index b8f17cd848292..39ec2faa2307f 100644 --- a/pandas/util/_decorators.py +++ b/pandas/util/_decorators.py @@ -17,8 +17,8 @@ from pandas._libs.properties import cache_readonly # noqa -FuncType = Callable[..., Any] -F = TypeVar("F", bound=FuncType) +_FuncType = Callable[..., Any] +_F = TypeVar("_F", bound=_FuncType) def deprecate( @@ -106,7 +106,7 @@ def deprecate_kwarg( new_arg_name: Optional[str], mapping: Optional[Union[Mapping[Any, Any], Callable[[Any], Any]]] = None, stacklevel: int = 2, -) -> Callable[..., Any]: +) -> Callable[[_F], _F]: """ Decorator to deprecate a keyword argument of a function. @@ -174,7 +174,7 @@ def deprecate_kwarg( "mapping from old to new argument values must be dict or callable!" ) - def _deprecate_kwarg(func: F) -> F: + def _deprecate_kwarg(func: _F) -> _F: @wraps(func) def wrapper(*args, **kwargs) -> Callable[..., Any]: old_arg_value = kwargs.pop(old_arg_name, None) @@ -221,7 +221,7 @@ def wrapper(*args, **kwargs) -> Callable[..., Any]: kwargs[new_arg_name] = new_arg_value return func(*args, **kwargs) - return cast(F, wrapper) + return cast(_F, wrapper) return _deprecate_kwarg @@ -229,7 +229,7 @@ def wrapper(*args, **kwargs) -> Callable[..., Any]: def rewrite_axis_style_signature( name: str, extra_params: List[Tuple[str, Any]] ) -> Callable[..., Any]: - def decorate(func: F) -> F: + def decorate(func: _F) -> _F: @wraps(func) def wrapper(*args, **kwargs) -> Callable[..., Any]: return func(*args, **kwargs) @@ -250,7 +250,7 @@ def wrapper(*args, **kwargs) -> Callable[..., Any]: # https://github.com/python/typing/issues/598 func.__signature__ = sig # type: ignore - return cast(F, wrapper) + return cast(_F, wrapper) return decorate @@ -294,7 +294,7 @@ def __init__(self, *args, **kwargs): self.params = args or kwargs - def __call__(self, func: F) -> F: + def __call__(self, func: _F) -> _F: func.__doc__ = func.__doc__ and func.__doc__ % self.params return func @@ -336,7 +336,7 @@ def __init__(self, addendum: Optional[str], join: str = "", indents: int = 0): self.addendum = addendum self.join = join - def __call__(self, func: F) -> F: + def __call__(self, func: _F) -> _F: func.__doc__ = func.__doc__ if func.__doc__ else "" self.addendum = self.addendum if self.addendum else "" docitems = [func.__doc__, self.addendum]