mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-07 20:54:28 +08:00
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
128 lines
4.2 KiB
Python
128 lines
4.2 KiB
Python
import re
|
|
import sys
|
|
from _warnings import warn as warn, warn_explicit as warn_explicit
|
|
from collections.abc import Sequence
|
|
from types import ModuleType, TracebackType
|
|
from typing import Any, Generic, Literal, TextIO, TypeVar, overload
|
|
from typing_extensions import LiteralString, TypeAlias
|
|
|
|
__all__ = [
|
|
"warn",
|
|
"warn_explicit",
|
|
"showwarning",
|
|
"formatwarning",
|
|
"filterwarnings",
|
|
"simplefilter",
|
|
"resetwarnings",
|
|
"catch_warnings",
|
|
]
|
|
|
|
if sys.version_info >= (3, 13):
|
|
__all__ += ["deprecated"]
|
|
|
|
_T = TypeVar("_T")
|
|
_W = TypeVar("_W", bound=list[WarningMessage] | None)
|
|
if sys.version_info >= (3, 14):
|
|
_ActionKind: TypeAlias = Literal["default", "error", "ignore", "always", "module", "once"]
|
|
else:
|
|
_ActionKind: TypeAlias = Literal["default", "error", "ignore", "always", "all", "module", "once"]
|
|
filters: Sequence[tuple[str, re.Pattern[str] | None, type[Warning], re.Pattern[str] | None, int]] # undocumented, do not mutate
|
|
|
|
def showwarning(
|
|
message: Warning | str,
|
|
category: type[Warning],
|
|
filename: str,
|
|
lineno: int,
|
|
file: TextIO | None = None,
|
|
line: str | None = None,
|
|
) -> None: ...
|
|
def formatwarning(
|
|
message: Warning | str, category: type[Warning], filename: str, lineno: int, line: str | None = None
|
|
) -> str: ...
|
|
def filterwarnings(
|
|
action: _ActionKind, message: str = "", category: type[Warning] = ..., module: str = "", lineno: int = 0, append: bool = False
|
|
) -> None: ...
|
|
def simplefilter(action: _ActionKind, category: type[Warning] = ..., lineno: int = 0, append: bool = False) -> None: ...
|
|
def resetwarnings() -> None: ...
|
|
|
|
class _OptionError(Exception): ...
|
|
|
|
class WarningMessage:
|
|
message: Warning | str
|
|
category: type[Warning]
|
|
filename: str
|
|
lineno: int
|
|
file: TextIO | None
|
|
line: str | None
|
|
source: Any | None
|
|
def __init__(
|
|
self,
|
|
message: Warning | str,
|
|
category: type[Warning],
|
|
filename: str,
|
|
lineno: int,
|
|
file: TextIO | None = None,
|
|
line: str | None = None,
|
|
source: Any | None = None,
|
|
) -> None: ...
|
|
|
|
class catch_warnings(Generic[_W]):
|
|
if sys.version_info >= (3, 11):
|
|
@overload
|
|
def __init__(
|
|
self: catch_warnings[None],
|
|
*,
|
|
record: Literal[False] = False,
|
|
module: ModuleType | None = None,
|
|
action: _ActionKind | None = None,
|
|
category: type[Warning] = ...,
|
|
lineno: int = 0,
|
|
append: bool = False,
|
|
) -> None: ...
|
|
@overload
|
|
def __init__(
|
|
self: catch_warnings[list[WarningMessage]],
|
|
*,
|
|
record: Literal[True],
|
|
module: ModuleType | None = None,
|
|
action: _ActionKind | None = None,
|
|
category: type[Warning] = ...,
|
|
lineno: int = 0,
|
|
append: bool = False,
|
|
) -> None: ...
|
|
@overload
|
|
def __init__(
|
|
self: catch_warnings[list[WarningMessage] | None],
|
|
*,
|
|
record: bool,
|
|
module: ModuleType | None = None,
|
|
action: _ActionKind | None = None,
|
|
category: type[Warning] = ...,
|
|
lineno: int = 0,
|
|
append: bool = False,
|
|
) -> None: ...
|
|
else:
|
|
@overload
|
|
def __init__(self: catch_warnings[None], *, record: Literal[False] = False, module: ModuleType | None = None) -> None: ...
|
|
@overload
|
|
def __init__(
|
|
self: catch_warnings[list[WarningMessage]], *, record: Literal[True], module: ModuleType | None = None
|
|
) -> None: ...
|
|
@overload
|
|
def __init__(
|
|
self: catch_warnings[list[WarningMessage] | None], *, record: bool, module: ModuleType | None = None
|
|
) -> None: ...
|
|
|
|
def __enter__(self) -> _W: ...
|
|
def __exit__(
|
|
self, exc_type: type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None
|
|
) -> None: ...
|
|
|
|
if sys.version_info >= (3, 13):
|
|
class deprecated:
|
|
message: LiteralString
|
|
category: type[Warning] | None
|
|
stacklevel: int
|
|
def __init__(self, message: LiteralString, /, *, category: type[Warning] | None = ..., stacklevel: int = 1) -> None: ...
|
|
def __call__(self, arg: _T, /) -> _T: ...
|