@@ -144,63 +144,63 @@ class KeyedRef(ref[_T], Generic[_KT, _T]):
144144 def __new__ (type , ob : _T , callback : Callable [[Self ], Any ], key : _KT ) -> Self : ...
145145 def __init__ (self , ob : _T , callback : Callable [[Self ], Any ], key : _KT ) -> None : ...
146146
147- class WeakKeyDictionary (MutableMapping [_T , _VT ]):
147+ class WeakKeyDictionary (MutableMapping [_KT , _VT ]):
148148 @overload
149149 def __init__ (self , dict : None = None ) -> None : ...
150150 @overload
151- def __init__ (self , dict : Mapping [_T , _VT ] | Iterable [tuple [_T , _VT ]]) -> None : ...
151+ def __init__ (self , dict : Mapping [_KT , _VT ] | Iterable [tuple [_KT , _VT ]]) -> None : ...
152152
153153 def __len__ (self ) -> int : ...
154- def __getitem__ (self , key : _T ) -> _VT : ...
155- def __setitem__ (self , key : _T , value : _VT ) -> None : ...
156- def __delitem__ (self , key : _T ) -> None : ...
154+ def __getitem__ (self , key : _KT ) -> _VT : ...
155+ def __setitem__ (self , key : _KT , value : _VT ) -> None : ...
156+ def __delitem__ (self , key : _KT ) -> None : ...
157157 def __contains__ (self , key : object ) -> bool : ...
158- def __iter__ (self ) -> Iterator [_T ]: ...
159- def copy (self ) -> WeakKeyDictionary [_T , _VT ]: ...
158+ def __iter__ (self ) -> Iterator [_KT ]: ...
159+ def copy (self ) -> WeakKeyDictionary [_KT , _VT ]: ...
160160 __copy__ = copy
161161 def __deepcopy__ (self , memo : Any ) -> Self : ...
162162
163163 @overload
164- def get (self , key : _T , default : None = None ) -> _VT | None : ...
164+ def get (self , key : _KT , default : None = None ) -> _VT | None : ...
165165 @overload
166- def get (self , key : _T , default : _VT ) -> _VT : ...
166+ def get (self , key : _KT , default : _VT ) -> _VT : ...
167167 @overload
168- def get (self , key : _T , default : _T1 ) -> _VT | _T1 : ...
168+ def get (self , key : _KT , default : _T ) -> _VT | _T : ...
169169
170170 # These are incompatible with Mapping
171- def keys (self ) -> Iterator [_T ]: ... # type: ignore[override]
171+ def keys (self ) -> Iterator [_KT ]: ... # type: ignore[override]
172172 def values (self ) -> Iterator [_VT ]: ... # type: ignore[override]
173- def items (self ) -> Iterator [tuple [_T , _VT ]]: ... # type: ignore[override]
174- def keyrefs (self ) -> list [ref [_T ]]: ...
173+ def items (self ) -> Iterator [tuple [_KT , _VT ]]: ... # type: ignore[override]
174+ def keyrefs (self ) -> list [ref [_KT ]]: ...
175175
176176 # Keep WeakKeyDictionary.setdefault in line with MutableMapping.setdefault, modulo positional-only differences
177177 @overload
178- def setdefault (self : WeakKeyDictionary [_T , _VT | None ], key : _T , default : None = None ) -> _VT : ...
178+ def setdefault (self : WeakKeyDictionary [_KT , _VT | None ], key : _KT , default : None = None ) -> _VT : ...
179179 @overload
180- def setdefault (self , key : _T , default : _VT ) -> _VT : ...
180+ def setdefault (self , key : _KT , default : _VT ) -> _VT : ...
181181
182182 @overload
183- def pop (self , key : _T ) -> _VT : ...
183+ def pop (self , key : _KT ) -> _VT : ...
184184 @overload
185- def pop (self , key : _T , default : _VT ) -> _VT : ...
185+ def pop (self , key : _KT , default : _VT ) -> _VT : ...
186186 @overload
187- def pop (self , key : _T , default : _T1 ) -> _VT | _T1 : ...
187+ def pop (self , key : _KT , default : _T ) -> _VT | _T : ...
188188
189189 @overload
190- def update (self , dict : SupportsKeysAndGetItem [_T , _VT ], / , ** kwargs : _VT ) -> None : ...
190+ def update (self , dict : SupportsKeysAndGetItem [_KT , _VT ], / , ** kwargs : _VT ) -> None : ...
191191 @overload
192- def update (self , dict : Iterable [tuple [_T , _VT ]], / , ** kwargs : _VT ) -> None : ...
192+ def update (self , dict : Iterable [tuple [_KT , _VT ]], / , ** kwargs : _VT ) -> None : ...
193193 @overload
194194 def update (self , dict : None = None , / , ** kwargs : _VT ) -> None : ...
195195
196- def __or__ (self , other : Mapping [_T1 , _T2 ]) -> WeakKeyDictionary [_T | _T1 , _VT | _T2 ]: ...
197- def __ror__ (self , other : Mapping [_T1 , _T2 ]) -> WeakKeyDictionary [_T | _T1 , _VT | _T2 ]: ...
196+ def __or__ (self , other : Mapping [_T1 , _T2 ]) -> WeakKeyDictionary [_KT | _T1 , _VT | _T2 ]: ...
197+ def __ror__ (self , other : Mapping [_T1 , _T2 ]) -> WeakKeyDictionary [_KT | _T1 , _VT | _T2 ]: ...
198198
199199 # WeakKeyDictionary.__ior__ should be kept roughly in line with MutableMapping.update()
200200 @overload # type: ignore[misc]
201- def __ior__ (self , other : SupportsKeysAndGetItem [_T , _VT ]) -> Self : ...
201+ def __ior__ (self , other : SupportsKeysAndGetItem [_KT , _VT ]) -> Self : ...
202202 @overload
203- def __ior__ (self , other : Iterable [tuple [_T , _VT ]]) -> Self : ...
203+ def __ior__ (self , other : Iterable [tuple [_KT , _VT ]]) -> Self : ...
204204
205205class finalize (Generic [_P , _T ]):
206206 __slots__ = ()
0 commit comments