]> jfr.im git - dlqueue.git/blame - venv/lib/python3.11/site-packages/werkzeug/datastructures/mixins.pyi
init: venv aand flask
[dlqueue.git] / venv / lib / python3.11 / site-packages / werkzeug / datastructures / mixins.pyi
CommitLineData
e0df8241
JR
1from collections.abc import Callable
2from collections.abc import Hashable
3from collections.abc import Iterable
4from typing import Any
5from typing import NoReturn
6from typing import overload
7from typing import SupportsIndex
8from typing import TypeVar
9
10from _typeshed import SupportsKeysAndGetItem
11
12from .headers import Headers
13
14K = TypeVar("K")
15T = TypeVar("T")
16V = TypeVar("V")
17
18def is_immutable(self: object) -> NoReturn: ...
19
20class ImmutableListMixin(list[V]):
21 _hash_cache: int | None
22 def __hash__(self) -> int: ... # type: ignore
23 def __delitem__(self, key: SupportsIndex | slice) -> NoReturn: ...
24 def __iadd__(self, other: t.Any) -> NoReturn: ... # type: ignore
25 def __imul__(self, other: SupportsIndex) -> NoReturn: ...
26 def __setitem__(self, key: int | slice, value: V) -> NoReturn: ... # type: ignore
27 def append(self, value: V) -> NoReturn: ...
28 def remove(self, value: V) -> NoReturn: ...
29 def extend(self, values: Iterable[V]) -> NoReturn: ...
30 def insert(self, pos: SupportsIndex, value: V) -> NoReturn: ...
31 def pop(self, index: SupportsIndex = -1) -> NoReturn: ...
32 def reverse(self) -> NoReturn: ...
33 def sort(
34 self, key: Callable[[V], Any] | None = None, reverse: bool = False
35 ) -> NoReturn: ...
36
37class ImmutableDictMixin(dict[K, V]):
38 _hash_cache: int | None
39 @classmethod
40 def fromkeys( # type: ignore
41 cls, keys: Iterable[K], value: V | None = None
42 ) -> ImmutableDictMixin[K, V]: ...
43 def _iter_hashitems(self) -> Iterable[Hashable]: ...
44 def __hash__(self) -> int: ... # type: ignore
45 def setdefault(self, key: K, default: V | None = None) -> NoReturn: ...
46 def update(self, *args: Any, **kwargs: V) -> NoReturn: ...
47 def pop(self, key: K, default: V | None = None) -> NoReturn: ... # type: ignore
48 def popitem(self) -> NoReturn: ...
49 def __setitem__(self, key: K, value: V) -> NoReturn: ...
50 def __delitem__(self, key: K) -> NoReturn: ...
51 def clear(self) -> NoReturn: ...
52
53class ImmutableMultiDictMixin(ImmutableDictMixin[K, V]):
54 def _iter_hashitems(self) -> Iterable[Hashable]: ...
55 def add(self, key: K, value: V) -> NoReturn: ...
56 def popitemlist(self) -> NoReturn: ...
57 def poplist(self, key: K) -> NoReturn: ...
58 def setlist(self, key: K, new_list: Iterable[V]) -> NoReturn: ...
59 def setlistdefault(
60 self, key: K, default_list: Iterable[V] | None = None
61 ) -> NoReturn: ...
62
63class ImmutableHeadersMixin(Headers):
64 def __delitem__(self, key: Any, _index_operation: bool = True) -> NoReturn: ...
65 def __setitem__(self, key: Any, value: Any) -> NoReturn: ...
66 def set(self, _key: Any, _value: Any, **kw: Any) -> NoReturn: ...
67 def setlist(self, key: Any, values: Any) -> NoReturn: ...
68 def add(self, _key: Any, _value: Any, **kw: Any) -> NoReturn: ...
69 def add_header(self, _key: Any, _value: Any, **_kw: Any) -> NoReturn: ...
70 def remove(self, key: Any) -> NoReturn: ...
71 def extend(self, *args: Any, **kwargs: Any) -> NoReturn: ...
72 def update(self, *args: Any, **kwargs: Any) -> NoReturn: ...
73 def insert(self, pos: Any, value: Any) -> NoReturn: ...
74 def pop(self, key: Any = None, default: Any = ...) -> NoReturn: ...
75 def popitem(self) -> NoReturn: ...
76 def setdefault(self, key: Any, default: Any) -> NoReturn: ...
77 def setlistdefault(self, key: Any, default: Any) -> NoReturn: ...
78
79def _calls_update(name: str) -> Callable[[UpdateDictMixin[K, V]], Any]: ...
80
81class UpdateDictMixin(dict[K, V]):
82 on_update: Callable[[UpdateDictMixin[K, V] | None, None], None]
83 def setdefault(self, key: K, default: V | None = None) -> V: ...
84 @overload
85 def pop(self, key: K) -> V: ...
86 @overload
87 def pop(self, key: K, default: V | T = ...) -> V | T: ...
88 def __setitem__(self, key: K, value: V) -> None: ...
89 def __delitem__(self, key: K) -> None: ...
90 def clear(self) -> None: ...
91 def popitem(self) -> tuple[K, V]: ...
92 @overload
93 def update(self, __m: SupportsKeysAndGetItem[K, V], **kwargs: V) -> None: ...
94 @overload
95 def update(self, __m: Iterable[tuple[K, V]], **kwargs: V) -> None: ...
96 @overload
97 def update(self, **kwargs: V) -> None: ...