Files
typeshed/stdlib/trace.pyi
2022-04-18 12:50:37 +02:00

61 lines
2.7 KiB
Python

import sys
import types
from _typeshed import StrPath
from collections.abc import Callable, Mapping, Sequence
from typing import Any, TypeVar
from typing_extensions import ParamSpec, TypeAlias
__all__ = ["Trace", "CoverageResults"]
_T = TypeVar("_T")
_P = ParamSpec("_P")
_localtrace: TypeAlias = Callable[[types.FrameType, str, Any], Callable[..., Any]]
_fileModuleFunction: TypeAlias = tuple[str, str | None, str]
class CoverageResults:
def __init__(
self,
counts: dict[tuple[str, int], int] | None = ...,
calledfuncs: dict[_fileModuleFunction, int] | None = ...,
infile: StrPath | None = ...,
callers: dict[tuple[_fileModuleFunction, _fileModuleFunction], int] | None = ...,
outfile: StrPath | None = ...,
) -> None: ... # undocumented
def update(self, other: CoverageResults) -> None: ...
def write_results(self, show_missing: bool = ..., summary: bool = ..., coverdir: StrPath | None = ...) -> None: ...
def write_results_file(
self, path: StrPath, lines: Sequence[str], lnotab: Any, lines_hit: Mapping[int, int], encoding: str | None = ...
) -> tuple[int, int]: ...
def is_ignored_filename(self, filename: str) -> bool: ... # undocumented
class Trace:
def __init__(
self,
count: int = ...,
trace: int = ...,
countfuncs: int = ...,
countcallers: int = ...,
ignoremods: Sequence[str] = ...,
ignoredirs: Sequence[str] = ...,
infile: StrPath | None = ...,
outfile: StrPath | None = ...,
timing: bool = ...,
) -> None: ...
def run(self, cmd: str | types.CodeType) -> None: ...
def runctx(
self, cmd: str | types.CodeType, globals: Mapping[str, Any] | None = ..., locals: Mapping[str, Any] | None = ...
) -> None: ...
if sys.version_info >= (3, 9):
def runfunc(self, __func: Callable[_P, _T], *args: _P.args, **kw: _P.kwargs) -> _T: ...
else:
def runfunc(self, func: Callable[_P, _T], *args: _P.args, **kw: _P.kwargs) -> _T: ...
def file_module_function_of(self, frame: types.FrameType) -> _fileModuleFunction: ...
def globaltrace_trackcallers(self, frame: types.FrameType, why: str, arg: Any) -> None: ...
def globaltrace_countfuncs(self, frame: types.FrameType, why: str, arg: Any) -> None: ...
def globaltrace_lt(self, frame: types.FrameType, why: str, arg: Any) -> None: ...
def localtrace_trace_and_count(self, frame: types.FrameType, why: str, arg: Any) -> _localtrace: ...
def localtrace_trace(self, frame: types.FrameType, why: str, arg: Any) -> _localtrace: ...
def localtrace_count(self, frame: types.FrameType, why: str, arg: Any) -> _localtrace: ...
def results(self) -> CoverageResults: ...