fix troostwijk changes
This commit is contained in:
@@ -0,0 +1,208 @@
|
||||
from collections.abc import Callable
|
||||
from collections.abc import Iterable
|
||||
from collections.abc import Iterator
|
||||
from collections.abc import Mapping
|
||||
from typing import Any
|
||||
from typing import Generic
|
||||
from typing import Literal
|
||||
from typing import NoReturn
|
||||
from typing import overload
|
||||
from typing import TypeVar
|
||||
|
||||
from .mixins import (
|
||||
ImmutableDictMixin,
|
||||
ImmutableListMixin,
|
||||
ImmutableMultiDictMixin,
|
||||
UpdateDictMixin,
|
||||
)
|
||||
|
||||
D = TypeVar("D")
|
||||
K = TypeVar("K")
|
||||
T = TypeVar("T")
|
||||
V = TypeVar("V")
|
||||
_CD = TypeVar("_CD", bound="CallbackDict")
|
||||
|
||||
def is_immutable(self: object) -> NoReturn: ...
|
||||
def iter_multi_items(
|
||||
mapping: Mapping[K, V | Iterable[V]] | Iterable[tuple[K, V]]
|
||||
) -> Iterator[tuple[K, V]]: ...
|
||||
|
||||
class ImmutableList(ImmutableListMixin[V]): ...
|
||||
|
||||
class TypeConversionDict(dict[K, V]):
|
||||
@overload
|
||||
def get(self, key: K, default: None = ..., type: None = ...) -> V | None: ...
|
||||
@overload
|
||||
def get(self, key: K, default: D, type: None = ...) -> D | V: ...
|
||||
@overload
|
||||
def get(self, key: K, default: D, type: Callable[[V], T]) -> D | T: ...
|
||||
@overload
|
||||
def get(self, key: K, type: Callable[[V], T]) -> T | None: ...
|
||||
|
||||
class ImmutableTypeConversionDict(ImmutableDictMixin[K, V], TypeConversionDict[K, V]):
|
||||
def copy(self) -> TypeConversionDict[K, V]: ...
|
||||
def __copy__(self) -> ImmutableTypeConversionDict: ...
|
||||
|
||||
class MultiDict(TypeConversionDict[K, V]):
|
||||
def __init__(
|
||||
self,
|
||||
mapping: Mapping[K, Iterable[V] | V] | Iterable[tuple[K, V]] | None = None,
|
||||
) -> None: ...
|
||||
def __getitem__(self, item: K) -> V: ...
|
||||
def __setitem__(self, key: K, value: V) -> None: ...
|
||||
def add(self, key: K, value: V) -> None: ...
|
||||
@overload
|
||||
def getlist(self, key: K) -> list[V]: ...
|
||||
@overload
|
||||
def getlist(self, key: K, type: Callable[[V], T] = ...) -> list[T]: ...
|
||||
def setlist(self, key: K, new_list: Iterable[V]) -> None: ...
|
||||
def setdefault(self, key: K, default: V | None = None) -> V: ...
|
||||
def setlistdefault(
|
||||
self, key: K, default_list: Iterable[V] | None = None
|
||||
) -> list[V]: ...
|
||||
def items(self, multi: bool = False) -> Iterator[tuple[K, V]]: ... # type: ignore
|
||||
def lists(self) -> Iterator[tuple[K, list[V]]]: ...
|
||||
def values(self) -> Iterator[V]: ... # type: ignore
|
||||
def listvalues(self) -> Iterator[list[V]]: ...
|
||||
def copy(self) -> MultiDict[K, V]: ...
|
||||
def deepcopy(self, memo: Any = None) -> MultiDict[K, V]: ...
|
||||
@overload
|
||||
def to_dict(self) -> dict[K, V]: ...
|
||||
@overload
|
||||
def to_dict(self, flat: Literal[False]) -> dict[K, list[V]]: ...
|
||||
def update( # type: ignore
|
||||
self, mapping: Mapping[K, Iterable[V] | V] | Iterable[tuple[K, V]]
|
||||
) -> None: ...
|
||||
@overload
|
||||
def pop(self, key: K) -> V: ...
|
||||
@overload
|
||||
def pop(self, key: K, default: V | T = ...) -> V | T: ...
|
||||
def popitem(self) -> tuple[K, V]: ...
|
||||
def poplist(self, key: K) -> list[V]: ...
|
||||
def popitemlist(self) -> tuple[K, list[V]]: ...
|
||||
def __copy__(self) -> MultiDict[K, V]: ...
|
||||
def __deepcopy__(self, memo: Any) -> MultiDict[K, V]: ...
|
||||
|
||||
class _omd_bucket(Generic[K, V]):
|
||||
prev: _omd_bucket | None
|
||||
next: _omd_bucket | None
|
||||
key: K
|
||||
value: V
|
||||
def __init__(self, omd: OrderedMultiDict, key: K, value: V) -> None: ...
|
||||
def unlink(self, omd: OrderedMultiDict) -> None: ...
|
||||
|
||||
class OrderedMultiDict(MultiDict[K, V]):
|
||||
_first_bucket: _omd_bucket | None
|
||||
_last_bucket: _omd_bucket | None
|
||||
def __init__(self, mapping: Mapping[K, V] | None = None) -> None: ...
|
||||
def __eq__(self, other: object) -> bool: ...
|
||||
def __getitem__(self, key: K) -> V: ...
|
||||
def __setitem__(self, key: K, value: V) -> None: ...
|
||||
def __delitem__(self, key: K) -> None: ...
|
||||
def keys(self) -> Iterator[K]: ... # type: ignore
|
||||
def __iter__(self) -> Iterator[K]: ...
|
||||
def values(self) -> Iterator[V]: ... # type: ignore
|
||||
def items(self, multi: bool = False) -> Iterator[tuple[K, V]]: ... # type: ignore
|
||||
def lists(self) -> Iterator[tuple[K, list[V]]]: ...
|
||||
def listvalues(self) -> Iterator[list[V]]: ...
|
||||
def add(self, key: K, value: V) -> None: ...
|
||||
@overload
|
||||
def getlist(self, key: K) -> list[V]: ...
|
||||
@overload
|
||||
def getlist(self, key: K, type: Callable[[V], T] = ...) -> list[T]: ...
|
||||
def setlist(self, key: K, new_list: Iterable[V]) -> None: ...
|
||||
def setlistdefault(
|
||||
self, key: K, default_list: Iterable[V] | None = None
|
||||
) -> list[V]: ...
|
||||
def update( # type: ignore
|
||||
self, mapping: Mapping[K, V] | Iterable[tuple[K, V]]
|
||||
) -> None: ...
|
||||
def poplist(self, key: K) -> list[V]: ...
|
||||
@overload
|
||||
def pop(self, key: K) -> V: ...
|
||||
@overload
|
||||
def pop(self, key: K, default: V | T = ...) -> V | T: ...
|
||||
def popitem(self) -> tuple[K, V]: ...
|
||||
def popitemlist(self) -> tuple[K, list[V]]: ...
|
||||
|
||||
class CombinedMultiDict(ImmutableMultiDictMixin[K, V], MultiDict[K, V]): # type: ignore
|
||||
dicts: list[MultiDict[K, V]]
|
||||
def __init__(self, dicts: Iterable[MultiDict[K, V]] | None) -> None: ...
|
||||
@classmethod
|
||||
def fromkeys(cls, keys: Any, value: Any = None) -> NoReturn: ...
|
||||
def __getitem__(self, key: K) -> V: ...
|
||||
@overload # type: ignore
|
||||
def get(self, key: K) -> V | None: ...
|
||||
@overload
|
||||
def get(self, key: K, default: V | T = ...) -> V | T: ...
|
||||
@overload
|
||||
def get(
|
||||
self, key: K, default: T | None = None, type: Callable[[V], T] = ...
|
||||
) -> T | None: ...
|
||||
@overload
|
||||
def getlist(self, key: K) -> list[V]: ...
|
||||
@overload
|
||||
def getlist(self, key: K, type: Callable[[V], T] = ...) -> list[T]: ...
|
||||
def _keys_impl(self) -> set[K]: ...
|
||||
def keys(self) -> set[K]: ... # type: ignore
|
||||
def __iter__(self) -> set[K]: ... # type: ignore
|
||||
def items(self, multi: bool = False) -> Iterator[tuple[K, V]]: ... # type: ignore
|
||||
def values(self) -> Iterator[V]: ... # type: ignore
|
||||
def lists(self) -> Iterator[tuple[K, list[V]]]: ...
|
||||
def listvalues(self) -> Iterator[list[V]]: ...
|
||||
def copy(self) -> MultiDict[K, V]: ...
|
||||
@overload
|
||||
def to_dict(self) -> dict[K, V]: ...
|
||||
@overload
|
||||
def to_dict(self, flat: Literal[False]) -> dict[K, list[V]]: ...
|
||||
def __contains__(self, key: K) -> bool: ... # type: ignore
|
||||
def has_key(self, key: K) -> bool: ...
|
||||
|
||||
class ImmutableDict(ImmutableDictMixin[K, V], dict[K, V]):
|
||||
def copy(self) -> dict[K, V]: ...
|
||||
def __copy__(self) -> ImmutableDict[K, V]: ...
|
||||
|
||||
class ImmutableMultiDict( # type: ignore
|
||||
ImmutableMultiDictMixin[K, V], MultiDict[K, V]
|
||||
):
|
||||
def copy(self) -> MultiDict[K, V]: ...
|
||||
def __copy__(self) -> ImmutableMultiDict[K, V]: ...
|
||||
|
||||
class ImmutableOrderedMultiDict( # type: ignore
|
||||
ImmutableMultiDictMixin[K, V], OrderedMultiDict[K, V]
|
||||
):
|
||||
def _iter_hashitems(self) -> Iterator[tuple[int, tuple[K, V]]]: ...
|
||||
def copy(self) -> OrderedMultiDict[K, V]: ...
|
||||
def __copy__(self) -> ImmutableOrderedMultiDict[K, V]: ...
|
||||
|
||||
class CallbackDict(UpdateDictMixin[K, V], dict[K, V]):
|
||||
def __init__(
|
||||
self,
|
||||
initial: Mapping[K, V] | Iterable[tuple[K, V]] | None = None,
|
||||
on_update: Callable[[_CD], None] | None = None,
|
||||
) -> None: ...
|
||||
|
||||
class HeaderSet(set[str]):
|
||||
_headers: list[str]
|
||||
_set: set[str]
|
||||
on_update: Callable[[HeaderSet], None] | None
|
||||
def __init__(
|
||||
self,
|
||||
headers: Iterable[str] | None = None,
|
||||
on_update: Callable[[HeaderSet], None] | None = None,
|
||||
) -> None: ...
|
||||
def add(self, header: str) -> None: ...
|
||||
def remove(self, header: str) -> None: ...
|
||||
def update(self, iterable: Iterable[str]) -> None: ... # type: ignore
|
||||
def discard(self, header: str) -> None: ...
|
||||
def find(self, header: str) -> int: ...
|
||||
def index(self, header: str) -> int: ...
|
||||
def clear(self) -> None: ...
|
||||
def as_set(self, preserve_casing: bool = False) -> set[str]: ...
|
||||
def to_header(self) -> str: ...
|
||||
def __getitem__(self, idx: int) -> str: ...
|
||||
def __delitem__(self, idx: int) -> None: ...
|
||||
def __setitem__(self, idx: int, value: str) -> None: ...
|
||||
def __contains__(self, header: str) -> bool: ... # type: ignore
|
||||
def __len__(self) -> int: ...
|
||||
def __iter__(self) -> Iterator[str]: ...
|
||||
Reference in New Issue
Block a user