add stubs for Python 2 profile and cProfile (#699)

* add stubs for Python 2 profile and cProfile

Partially fixes #531. Contrary to the Python 2.7 docs at
https://docs.python.org/2/library/profile.html#module-cProfile,
these modules do not have exactly the same interface. For
example, profile.Profile() does not have an enable() method.

* profile stubs: move to 2and3, add __init__, use private names for typevars
This commit is contained in:
Jelle Zijlstra
2016-12-01 03:51:41 -08:00
committed by Jukka Lehtosalo
parent 38d356503d
commit 392eb4aa5a
2 changed files with 39 additions and 0 deletions

18
stdlib/2and3/cProfile.pyi Normal file
View File

@@ -0,0 +1,18 @@
from typing import Any, Callable, Dict, Optional, TypeVar
def run(statement: str, filename: Optional[str] = ..., sort: int = ...) -> None: ...
def runctx(statement: str, globals: Dict[str, Any], locals: Dict[str, Any], filename: Optional[str] = ..., sort: int = ...) -> None: ...
_SelfT = TypeVar('_SelfT', bound='Profile')
_T = TypeVar('_T')
class Profile:
def __init__(self, custom_timer: Callable[[], float] = ..., time_unit: float = ..., subcalls: bool = ..., builtins: bool = ...) -> None: ...
def enable(self) -> None: ...
def disable(self) -> None: ...
def print_stats(self, sort: int = ...) -> None: ...
def dump_stats(self, file: str) -> None: ...
def create_stats(self) -> None: ...
def run(self: _SelfT, cmd: str) -> _SelfT: ...
def runctx(self: _SelfT, cmd: str, globals: Dict[str, Any], locals: Dict[str, Any]) -> _SelfT: ...
def runcall(self, func: Callable[..., _T], *args: Any, **kw: Any) -> _T: ...

21
stdlib/2and3/profile.pyi Normal file
View File

@@ -0,0 +1,21 @@
from typing import Any, Callable, Dict, Optional, TypeVar
def run(statement: str, filename: Optional[str] = ..., sort: int = ...) -> None: ...
def runctx(statement: str, globals: Dict[str, Any], locals: Dict[str, Any], filename: Optional[str] = ..., sort: int = ...) -> None: ...
_SelfT = TypeVar('_SelfT', bound='Profile')
_T = TypeVar('_T')
class Profile:
def __init__(self, timer: Optional[Callable[[], float]] = ..., bias: Optional[int] = ...) -> None: ...
def set_cmd(self, cmd: str) -> None: ...
def simulate_call(self, name: str) -> None: ...
def simulate_cmd_complete(self) -> None: ...
def print_stats(self, sort: int = ...) -> None: ...
def dump_stats(self, file: str) -> None: ...
def create_stats(self) -> None: ...
def snapshot_stats(self) -> None: ...
def run(self: _SelfT, cmd: str) -> _SelfT: ...
def runctx(self: _SelfT, cmd: str, globals: Dict[str, Any], locals: Dict[str, Any]) -> _SelfT: ...
def runcall(self, func: Callable[..., _T], *args: Any, **kw: Any) -> _T: ...
def calibrate(self, m: int, verbose: int = ...) -> float: ...