from __future__ import print_function import types import unittest from builtins import next as next from collections.abc import Callable, ItemsView, Iterable, Iterator as _Iterator, KeysView, Mapping, ValuesView from functools import wraps as wraps from io import BytesIO as BytesIO, StringIO as StringIO from typing import Any, AnyStr, NoReturn, Pattern, Tuple, Type, TypeVar, overload from typing_extensions import Literal from . import moves as moves _T = TypeVar("_T") _K = TypeVar("_K") _V = TypeVar("_V") __author__: str __version__: str PY2: Literal[False] PY3: Literal[True] PY34: Literal[True] string_types: tuple[Type[str]] integer_types: tuple[Type[int]] class_types: tuple[Type[Type[Any]]] text_type = str binary_type = bytes MAXSIZE: int def callable(obj: object) -> bool: ... def get_unbound_function(unbound: types.FunctionType) -> types.FunctionType: ... def create_bound_method(func: types.FunctionType, obj: object) -> types.MethodType: ... def create_unbound_method(func: types.FunctionType, cls: type) -> types.FunctionType: ... Iterator = object def get_method_function(meth: types.MethodType) -> types.FunctionType: ... def get_method_self(meth: types.MethodType) -> object | None: ... def get_function_closure(fun: types.FunctionType) -> Tuple[types._Cell, ...] | None: ... def get_function_code(fun: types.FunctionType) -> types.CodeType: ... def get_function_defaults(fun: types.FunctionType) -> Tuple[Any, ...] | None: ... def get_function_globals(fun: types.FunctionType) -> dict[str, Any]: ... def iterkeys(d: Mapping[_K, Any]) -> _Iterator[_K]: ... def itervalues(d: Mapping[Any, _V]) -> _Iterator[_V]: ... def iteritems(d: Mapping[_K, _V]) -> _Iterator[tuple[_K, _V]]: ... # def iterlists def viewkeys(d: Mapping[_K, Any]) -> KeysView[_K]: ... def viewvalues(d: Mapping[Any, _V]) -> ValuesView[_V]: ... def viewitems(d: Mapping[_K, _V]) -> ItemsView[_K, _V]: ... def b(s: str) -> bytes: ... def u(s: str) -> str: ... unichr = chr def int2byte(i: int) -> bytes: ... def byte2int(bs: bytes) -> int: ... def indexbytes(buf: bytes, i: int) -> int: ... def iterbytes(buf: bytes) -> _Iterator[int]: ... def assertCountEqual(self: unittest.TestCase, first: Iterable[_T], second: Iterable[_T], msg: str | None = ...) -> None: ... @overload def assertRaisesRegex(self: unittest.TestCase, msg: str | None = ...) -> Any: ... @overload def assertRaisesRegex(self: unittest.TestCase, callable_obj: Callable[..., Any], *args: Any, **kwargs: Any) -> Any: ... def assertRegex( self: unittest.TestCase, text: AnyStr, expected_regex: AnyStr | Pattern[AnyStr], msg: str | None = ... ) -> None: ... exec_ = exec def reraise(tp: Type[BaseException] | None, value: BaseException | None, tb: types.TracebackType | None = ...) -> NoReturn: ... def raise_from(value: BaseException | Type[BaseException], from_value: BaseException | None) -> NoReturn: ... print_ = print def with_metaclass(meta: type, *bases: type) -> type: ... def add_metaclass(metaclass: type) -> Callable[[_T], _T]: ... def ensure_binary(s: bytes | str, encoding: str = ..., errors: str = ...) -> bytes: ... def ensure_str(s: bytes | str, encoding: str = ..., errors: str = ...) -> str: ... def ensure_text(s: bytes | str, encoding: str = ..., errors: str = ...) -> str: ... def python_2_unicode_compatible(klass: _T) -> _T: ... class _LazyDescr: name: str def __init__(self, name: str) -> None: ... def __get__(self, obj: object | None, type: Type[Any] | None = ...) -> Any: ... class MovedModule(_LazyDescr): mod: str def __init__(self, name: str, old: str, new: str | None = ...) -> None: ... def __getattr__(self, attr: str) -> Any: ... class MovedAttribute(_LazyDescr): mod: str attr: str def __init__(self, name: str, old_mod: str, new_mod: str, old_attr: str | None = ..., new_attr: str | None = ...) -> None: ... def add_move(move: MovedModule | MovedAttribute) -> None: ... def remove_move(name: str) -> None: ...