from typing import Any, overload, TypeVar, List, Union
from numpy import floating, bool_, object_, ndarray
from numpy.typing import (
NDArray,
_FloatLike_co,
_ArrayLikeFloat_co,
_ArrayLikeObject_co,
)
_ArrayType = TypeVar("_ArrayType", bound=ndarray[Any, Any])
__all__: List[str]
@overload
def fix( # type: ignore[misc]
x: _FloatLike_co,
out: None = ...,
) -> floating[Any]: ...
@overload
def fix(
x: _ArrayLikeFloat_co,
out: None = ...,
) -> NDArray[floating[Any]]: ...
@overload
def fix(
x: _ArrayLikeObject_co,
out: None = ...,
) -> NDArray[object_]: ...
@overload
def fix(
x: Union[_ArrayLikeFloat_co, _ArrayLikeObject_co],
out: _ArrayType,
) -> _ArrayType: ...
@overload
def isposinf( # type: ignore[misc]
x: _FloatLike_co,
out: None = ...,
) -> bool_: ...
@overload
def isposinf(
x: _ArrayLikeFloat_co,
out: None = ...,
) -> NDArray[bool_]: ...
@overload
def isposinf(
x: _ArrayLikeFloat_co,
out: _ArrayType,
) -> _ArrayType: ...
@overload
def isneginf( # type: ignore[misc]
x: _FloatLike_co,
out: None = ...,
) -> bool_: ...
@overload
def isneginf(
x: _ArrayLikeFloat_co,
out: None = ...,
) -> NDArray[bool_]: ...
@overload
def isneginf(
x: _ArrayLikeFloat_co,
out: _ArrayType,
) -> _ArrayType: ...