MicroPython stuff
This commit is contained in:
369
.vscode/Pico-W-Stub/stdlib/sys.pyi
vendored
Normal file
369
.vscode/Pico-W-Stub/stdlib/sys.pyi
vendored
Normal file
@@ -0,0 +1,369 @@
|
||||
import sys
|
||||
from builtins import object as _object
|
||||
from collections.abc import AsyncGenerator, Callable, Coroutine, Sequence
|
||||
from importlib.abc import PathEntryFinder # type: ignore
|
||||
from importlib.machinery import ModuleSpec # type: ignore
|
||||
from io import TextIOWrapper
|
||||
from types import FrameType, ModuleType, TracebackType
|
||||
from typing import Any, NoReturn, Protocol, TextIO, TypeVar, overload
|
||||
|
||||
from _typeshed import OptExcInfo, ProfileFunction, TraceFunction, structseq
|
||||
from typing_extensions import Literal, TypeAlias, final
|
||||
|
||||
_T = TypeVar("_T")
|
||||
|
||||
# see https://github.com/python/typeshed/issues/8513#issue-1333671093 for the rationale behind this alias
|
||||
_ExitCode: TypeAlias = str | int | None
|
||||
_OptExcInfo: TypeAlias = OptExcInfo # noqa: Y047 # TODO: obsolete, remove fall 2022 or later
|
||||
|
||||
# Intentionally omits one deprecated and one optional method of `importlib.abc.MetaPathFinder`
|
||||
class _MetaPathFinder(Protocol):
|
||||
def find_spec(
|
||||
self, fullname: str, path: Sequence[str] | None, target: ModuleType | None = ...
|
||||
) -> ModuleSpec | None: ...
|
||||
|
||||
# ----- sys variables -----
|
||||
if sys.platform != "win32":
|
||||
abiflags: str
|
||||
argv: list[str]
|
||||
base_exec_prefix: str
|
||||
base_prefix: str
|
||||
byteorder: Literal["little", "big"]
|
||||
builtin_module_names: Sequence[str] # actually a tuple of strings
|
||||
copyright: str
|
||||
if sys.platform == "win32":
|
||||
dllhandle: int
|
||||
dont_write_bytecode: bool
|
||||
displayhook: Callable[[object], Any]
|
||||
excepthook: Callable[[type[BaseException], BaseException, TracebackType | None], Any]
|
||||
exec_prefix: str
|
||||
executable: str
|
||||
float_repr_style: Literal["short", "legacy"]
|
||||
hexversion: int
|
||||
last_type: type[BaseException] | None
|
||||
last_value: BaseException | None
|
||||
last_traceback: TracebackType | None
|
||||
maxsize: int
|
||||
maxunicode: int
|
||||
meta_path: list[_MetaPathFinder]
|
||||
modules: dict[str, ModuleType]
|
||||
if sys.version_info >= (3, 10):
|
||||
orig_argv: list[str]
|
||||
path: list[str]
|
||||
path_hooks: list[Callable[[str], PathEntryFinder]]
|
||||
path_importer_cache: dict[str, PathEntryFinder | None]
|
||||
platform: str
|
||||
if sys.version_info >= (3, 9):
|
||||
platlibdir: str
|
||||
prefix: str
|
||||
if sys.version_info >= (3, 8):
|
||||
pycache_prefix: str | None
|
||||
ps1: object
|
||||
ps2: object
|
||||
stdin: TextIO
|
||||
stdout: TextIO
|
||||
stderr: TextIO
|
||||
if sys.version_info >= (3, 10):
|
||||
stdlib_module_names: frozenset[str]
|
||||
__stdin__: TextIOWrapper
|
||||
__stdout__: TextIOWrapper
|
||||
__stderr__: TextIOWrapper
|
||||
tracebacklimit: int
|
||||
version: str
|
||||
api_version: int
|
||||
warnoptions: Any
|
||||
# Each entry is a tuple of the form (action, message, category, module,
|
||||
# lineno)
|
||||
if sys.platform == "win32":
|
||||
winver: str
|
||||
_xoptions: dict[Any, Any]
|
||||
|
||||
# Type alias used as a mixin for structseq classes that cannot be instantiated at runtime
|
||||
# This can't be represented in the type system, so we just use `structseq[Any]`
|
||||
_UninstantiableStructseq: TypeAlias = structseq[Any]
|
||||
|
||||
flags: _flags
|
||||
|
||||
if sys.version_info >= (3, 10):
|
||||
_FlagTuple: TypeAlias = tuple[
|
||||
int, int, int, int, int, int, int, int, int, int, int, int, int, bool, int, int
|
||||
]
|
||||
else:
|
||||
_FlagTuple: TypeAlias = tuple[
|
||||
int, int, int, int, int, int, int, int, int, int, int, int, int, bool, int
|
||||
]
|
||||
|
||||
@final
|
||||
class _flags(_UninstantiableStructseq, _FlagTuple):
|
||||
@property
|
||||
def debug(self) -> int: ...
|
||||
@property
|
||||
def inspect(self) -> int: ...
|
||||
@property
|
||||
def interactive(self) -> int: ...
|
||||
@property
|
||||
def optimize(self) -> int: ...
|
||||
@property
|
||||
def dont_write_bytecode(self) -> int: ...
|
||||
@property
|
||||
def no_user_site(self) -> int: ...
|
||||
@property
|
||||
def no_site(self) -> int: ...
|
||||
@property
|
||||
def ignore_environment(self) -> int: ...
|
||||
@property
|
||||
def verbose(self) -> int: ...
|
||||
@property
|
||||
def bytes_warning(self) -> int: ...
|
||||
@property
|
||||
def quiet(self) -> int: ...
|
||||
@property
|
||||
def hash_randomization(self) -> int: ...
|
||||
@property
|
||||
def isolated(self) -> int: ...
|
||||
@property
|
||||
def dev_mode(self) -> bool: ...
|
||||
@property
|
||||
def utf8_mode(self) -> int: ...
|
||||
if sys.version_info >= (3, 10):
|
||||
@property
|
||||
def warn_default_encoding(self) -> int: ... # undocumented
|
||||
if sys.version_info >= (3, 11):
|
||||
@property
|
||||
def safe_path(self) -> bool: ...
|
||||
|
||||
float_info: _float_info
|
||||
|
||||
@final
|
||||
class _float_info(
|
||||
structseq[float], tuple[float, int, int, float, int, int, int, int, float, int, int]
|
||||
):
|
||||
@property
|
||||
def max(self) -> float: ... # DBL_MAX
|
||||
@property
|
||||
def max_exp(self) -> int: ... # DBL_MAX_EXP
|
||||
@property
|
||||
def max_10_exp(self) -> int: ... # DBL_MAX_10_EXP
|
||||
@property
|
||||
def min(self) -> float: ... # DBL_MIN
|
||||
@property
|
||||
def min_exp(self) -> int: ... # DBL_MIN_EXP
|
||||
@property
|
||||
def min_10_exp(self) -> int: ... # DBL_MIN_10_EXP
|
||||
@property
|
||||
def dig(self) -> int: ... # DBL_DIG
|
||||
@property
|
||||
def mant_dig(self) -> int: ... # DBL_MANT_DIG
|
||||
@property
|
||||
def epsilon(self) -> float: ... # DBL_EPSILON
|
||||
@property
|
||||
def radix(self) -> int: ... # FLT_RADIX
|
||||
@property
|
||||
def rounds(self) -> int: ... # FLT_ROUNDS
|
||||
|
||||
hash_info: _hash_info
|
||||
|
||||
@final
|
||||
class _hash_info(structseq[Any | int], tuple[int, int, int, int, int, str, int, int, int]):
|
||||
@property
|
||||
def width(self) -> int: ...
|
||||
@property
|
||||
def modulus(self) -> int: ...
|
||||
@property
|
||||
def inf(self) -> int: ...
|
||||
@property
|
||||
def nan(self) -> int: ...
|
||||
@property
|
||||
def imag(self) -> int: ...
|
||||
@property
|
||||
def algorithm(self) -> str: ...
|
||||
@property
|
||||
def hash_bits(self) -> int: ...
|
||||
@property
|
||||
def seed_bits(self) -> int: ...
|
||||
@property
|
||||
def cutoff(self) -> int: ... # undocumented
|
||||
|
||||
implementation: _implementation
|
||||
|
||||
class _implementation:
|
||||
name: str
|
||||
version: _version_info
|
||||
hexversion: int
|
||||
cache_tag: str
|
||||
# Define __getattr__, as the documentation states:
|
||||
# > sys.implementation may contain additional attributes specific to the Python implementation.
|
||||
# > These non-standard attributes must start with an underscore, and are not described here.
|
||||
def __getattr__(self, name: str) -> Any: ...
|
||||
|
||||
int_info: _int_info
|
||||
|
||||
@final
|
||||
class _int_info(structseq[int], tuple[int, int, int, int]):
|
||||
@property
|
||||
def bits_per_digit(self) -> int: ...
|
||||
@property
|
||||
def sizeof_digit(self) -> int: ...
|
||||
@property
|
||||
def default_max_str_digits(self) -> int: ...
|
||||
@property
|
||||
def str_digits_check_threshold(self) -> int: ...
|
||||
|
||||
@final
|
||||
class _version_info(_UninstantiableStructseq, tuple[int, int, int, str, int]):
|
||||
@property
|
||||
def major(self) -> int: ...
|
||||
@property
|
||||
def minor(self) -> int: ...
|
||||
@property
|
||||
def micro(self) -> int: ...
|
||||
@property
|
||||
def releaselevel(self) -> str: ...
|
||||
@property
|
||||
def serial(self) -> int: ...
|
||||
|
||||
version_info: _version_info
|
||||
|
||||
def call_tracing(__func: Callable[..., _T], __args: Any) -> _T: ...
|
||||
def _clear_type_cache() -> None: ...
|
||||
def _current_frames() -> dict[int, FrameType]: ...
|
||||
def _getframe(__depth: int = ...) -> FrameType: ...
|
||||
def _debugmallocstats() -> None: ...
|
||||
def __displayhook__(__value: object) -> None: ...
|
||||
def __excepthook__(
|
||||
__exctype: type[BaseException], __value: BaseException, __traceback: TracebackType | None
|
||||
) -> None: ...
|
||||
def exc_info() -> OptExcInfo: ...
|
||||
|
||||
if sys.version_info >= (3, 11):
|
||||
def exception() -> BaseException | None: ...
|
||||
|
||||
def exit(__status: _ExitCode = ...) -> NoReturn: ...
|
||||
def getallocatedblocks() -> int: ...
|
||||
def getdefaultencoding() -> str: ...
|
||||
|
||||
if sys.platform != "win32":
|
||||
def getdlopenflags() -> int: ...
|
||||
|
||||
def getfilesystemencoding() -> str: ...
|
||||
def getfilesystemencodeerrors() -> str: ...
|
||||
def getrefcount(__object: Any) -> int: ...
|
||||
def getrecursionlimit() -> int: ...
|
||||
@overload
|
||||
def getsizeof(obj: object) -> int: ...
|
||||
@overload
|
||||
def getsizeof(obj: object, default: int) -> int: ...
|
||||
def getswitchinterval() -> float: ...
|
||||
def getprofile() -> ProfileFunction | None: ...
|
||||
def setprofile(profilefunc: ProfileFunction | None) -> None: ...
|
||||
def gettrace() -> TraceFunction | None: ...
|
||||
def settrace(tracefunc: TraceFunction | None) -> None: ...
|
||||
|
||||
if sys.platform == "win32":
|
||||
# A tuple of length 5, even though it has more than 5 attributes.
|
||||
@final
|
||||
class _WinVersion(_UninstantiableStructseq, tuple[int, int, int, int, str]):
|
||||
@property
|
||||
def major(self) -> int: ...
|
||||
@property
|
||||
def minor(self) -> int: ...
|
||||
@property
|
||||
def build(self) -> int: ...
|
||||
@property
|
||||
def platform(self) -> int: ...
|
||||
@property
|
||||
def service_pack(self) -> str: ...
|
||||
@property
|
||||
def service_pack_minor(self) -> int: ...
|
||||
@property
|
||||
def service_pack_major(self) -> int: ...
|
||||
@property
|
||||
def suite_mask(self) -> int: ...
|
||||
@property
|
||||
def product_type(self) -> int: ...
|
||||
@property
|
||||
def platform_version(self) -> tuple[int, int, int]: ...
|
||||
|
||||
def getwindowsversion() -> _WinVersion: ...
|
||||
|
||||
def intern(__string: str) -> str: ...
|
||||
def is_finalizing() -> bool: ...
|
||||
|
||||
__breakpointhook__: Any # contains the original value of breakpointhook
|
||||
|
||||
def breakpointhook(*args: Any, **kwargs: Any) -> Any: ...
|
||||
|
||||
if sys.platform != "win32":
|
||||
def setdlopenflags(__flags: int) -> None: ...
|
||||
|
||||
def setrecursionlimit(__limit: int) -> None: ...
|
||||
def setswitchinterval(__interval: float) -> None: ...
|
||||
def gettotalrefcount() -> int: ... # Debug builds only
|
||||
|
||||
if sys.version_info < (3, 9):
|
||||
def getcheckinterval() -> int: ... # deprecated
|
||||
def setcheckinterval(__n: int) -> None: ... # deprecated
|
||||
|
||||
if sys.version_info < (3, 9):
|
||||
# An 11-tuple or None
|
||||
def callstats() -> tuple[int, int, int, int, int, int, int, int, int, int, int] | None: ...
|
||||
|
||||
if sys.version_info >= (3, 8):
|
||||
# Doesn't exist at runtime, but exported in the stubs so pytest etc. can annotate their code more easily.
|
||||
class UnraisableHookArgs:
|
||||
exc_type: type[BaseException]
|
||||
exc_value: BaseException | None
|
||||
exc_traceback: TracebackType | None
|
||||
err_msg: str | None
|
||||
object: _object | None
|
||||
unraisablehook: Callable[[UnraisableHookArgs], Any]
|
||||
def __unraisablehook__(__unraisable: UnraisableHookArgs) -> Any: ...
|
||||
def addaudithook(hook: Callable[[str, tuple[Any, ...]], Any]) -> None: ...
|
||||
def audit(__event: str, *args: Any) -> None: ...
|
||||
|
||||
_AsyncgenHook: TypeAlias = Callable[[AsyncGenerator[Any, Any]], None] | None
|
||||
|
||||
@final
|
||||
class _asyncgen_hooks(structseq[_AsyncgenHook], tuple[_AsyncgenHook, _AsyncgenHook]):
|
||||
@property
|
||||
def firstiter(self) -> _AsyncgenHook: ...
|
||||
@property
|
||||
def finalizer(self) -> _AsyncgenHook: ...
|
||||
|
||||
def get_asyncgen_hooks() -> _asyncgen_hooks: ...
|
||||
def set_asyncgen_hooks(firstiter: _AsyncgenHook = ..., finalizer: _AsyncgenHook = ...) -> None: ...
|
||||
|
||||
if sys.platform == "win32":
|
||||
def _enablelegacywindowsfsencoding() -> None: ...
|
||||
|
||||
def get_coroutine_origin_tracking_depth() -> int: ...
|
||||
def set_coroutine_origin_tracking_depth(depth: int) -> None: ...
|
||||
|
||||
if sys.version_info < (3, 8):
|
||||
_CoroWrapper: TypeAlias = Callable[[Coroutine[Any, Any, Any]], Any]
|
||||
def set_coroutine_wrapper(__wrapper: _CoroWrapper) -> None: ...
|
||||
def get_coroutine_wrapper() -> _CoroWrapper: ...
|
||||
|
||||
# The following two functions were added in 3.11.0, 3.10.7, 3.9.14, 3.8.14, & 3.7.14,
|
||||
# as part of the response to CVE-2020-10735
|
||||
def set_int_max_str_digits(maxdigits: int) -> None: ...
|
||||
def get_int_max_str_digits() -> int: ...
|
||||
|
||||
# MicroPython specific functions
|
||||
# Copyright (c) 2023 Jos Verlinde
|
||||
|
||||
from typing import Optional
|
||||
from _typeshed import Incomplete
|
||||
def atexit(func:Optional[Callable[[],Any]]) -> Optional[Callable[[],Any]]:
|
||||
"""\
|
||||
Register func to be called upon termination. func must be a callable that takes no arguments,
|
||||
or None to disable the call. The atexit function will return the previous value set by this function,
|
||||
which is initially None.
|
||||
|
||||
Ports: Unix, Windows
|
||||
"""
|
||||
...
|
||||
|
||||
def print_exception(exc, file=sys.stdout, /):
|
||||
"""Print exception with a traceback to a file-like object file (or sys.stdout by default)."""
|
||||
...
|
||||
Reference in New Issue
Block a user