@@ -20,8 +20,8 @@ class LookupProtocol(t.Protocol):
20
20
21
21
def __call__ (
22
22
self ,
23
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
24
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
23
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
24
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
25
25
) -> bool :
26
26
"""Return callback for :class:`QueryList` filtering operators."""
27
27
...
@@ -43,7 +43,7 @@ class ObjectDoesNotExist(Exception):
43
43
def keygetter (
44
44
obj : "Mapping[str, t.Any]" ,
45
45
path : str ,
46
- ) -> t .Union [None , t .Any , str , t . List [str ], "Mapping[str, str]" ]:
46
+ ) -> t .Union [None , t .Any , str , list [str ], "Mapping[str, str]" ]:
47
47
"""Fetch values in objects and keys, supported nested data.
48
48
49
49
**With dictionaries**:
@@ -151,15 +151,15 @@ def parse_lookup(
151
151
152
152
153
153
def lookup_exact (
154
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
155
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
154
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
155
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
156
156
) -> bool :
157
157
return rhs == data
158
158
159
159
160
160
def lookup_iexact (
161
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
162
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
161
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
162
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
163
163
) -> bool :
164
164
if not isinstance (rhs , str ) or not isinstance (data , str ):
165
165
return False
@@ -168,8 +168,8 @@ def lookup_iexact(
168
168
169
169
170
170
def lookup_contains (
171
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
172
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
171
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
172
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
173
173
) -> bool :
174
174
if not isinstance (rhs , str ) or not isinstance (data , (str , Mapping , list )):
175
175
return False
@@ -178,8 +178,8 @@ def lookup_contains(
178
178
179
179
180
180
def lookup_icontains (
181
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
182
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
181
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
182
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
183
183
) -> bool :
184
184
if not isinstance (rhs , str ) or not isinstance (data , (str , Mapping , list )):
185
185
return False
@@ -193,8 +193,8 @@ def lookup_icontains(
193
193
194
194
195
195
def lookup_startswith (
196
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
197
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
196
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
197
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
198
198
) -> bool :
199
199
if not isinstance (rhs , str ) or not isinstance (data , str ):
200
200
return False
@@ -203,8 +203,8 @@ def lookup_startswith(
203
203
204
204
205
205
def lookup_istartswith (
206
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
207
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
206
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
207
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
208
208
) -> bool :
209
209
if not isinstance (rhs , str ) or not isinstance (data , str ):
210
210
return False
@@ -213,8 +213,8 @@ def lookup_istartswith(
213
213
214
214
215
215
def lookup_endswith (
216
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
217
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
216
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
217
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
218
218
) -> bool :
219
219
if not isinstance (rhs , str ) or not isinstance (data , str ):
220
220
return False
@@ -223,17 +223,17 @@ def lookup_endswith(
223
223
224
224
225
225
def lookup_iendswith (
226
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
227
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
226
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
227
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
228
228
) -> bool :
229
229
if not isinstance (rhs , str ) or not isinstance (data , str ):
230
230
return False
231
231
return data .lower ().endswith (rhs .lower ())
232
232
233
233
234
234
def lookup_in (
235
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
236
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
235
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
236
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
237
237
) -> bool :
238
238
if isinstance (rhs , list ):
239
239
return data in rhs
@@ -254,8 +254,8 @@ def lookup_in(
254
254
255
255
256
256
def lookup_nin (
257
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
258
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
257
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
258
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
259
259
) -> bool :
260
260
if isinstance (rhs , list ):
261
261
return data not in rhs
@@ -276,17 +276,17 @@ def lookup_nin(
276
276
277
277
278
278
def lookup_regex (
279
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
280
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
279
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
280
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
281
281
) -> bool :
282
282
if isinstance (data , (str , bytes , re .Pattern )) and isinstance (rhs , (str , bytes )):
283
283
return bool (re .search (rhs , data ))
284
284
return False
285
285
286
286
287
287
def lookup_iregex (
288
- data : t .Union [str , t . List [str ], "Mapping[str, str]" ],
289
- rhs : t .Union [str , t . List [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
288
+ data : t .Union [str , list [str ], "Mapping[str, str]" ],
289
+ rhs : t .Union [str , list [str ], "Mapping[str, str]" , "re.Pattern[str]" ],
290
290
) -> bool :
291
291
if isinstance (data , (str , bytes , re .Pattern )) and isinstance (rhs , (str , bytes )):
292
292
return bool (re .search (rhs , data , re .IGNORECASE ))
@@ -320,7 +320,7 @@ def __init__(self, op: str, *args: object) -> None:
320
320
return super ().__init__ (f"{ op } not in LOOKUP_NAME_MAP" )
321
321
322
322
323
- class QueryList (t . List [T ], t .Generic [T ]):
323
+ class QueryList (list [T ], t .Generic [T ]):
324
324
"""Filter list of object/dictionaries. For small, local datasets.
325
325
326
326
*Experimental, unstable*.
@@ -475,7 +475,7 @@ class QueryList(t.List[T], t.Generic[T]):
475
475
def __init__ (self , items : t .Optional ["Iterable[T]" ] = None ) -> None :
476
476
super ().__init__ (items if items is not None else [])
477
477
478
- def items (self ) -> t . List [ t . Tuple [str , T ]]:
478
+ def items (self ) -> list [ tuple [str , T ]]:
479
479
if self .pk_key is None :
480
480
raise PKRequiredException
481
481
return [(getattr (item , self .pk_key ), item ) for item in self ]
@@ -531,19 +531,19 @@ def filter_lookup(obj: t.Any) -> bool:
531
531
return True
532
532
533
533
if callable (matcher ):
534
- _filter = matcher
534
+ filter_ = matcher
535
535
elif matcher is not None :
536
536
537
- def val_match (obj : t .Union [str , t . List [t .Any ], T ]) -> bool :
537
+ def val_match (obj : t .Union [str , list [t .Any ], T ]) -> bool :
538
538
if isinstance (matcher , list ):
539
539
return obj in matcher
540
540
return bool (obj == matcher )
541
541
542
- _filter = val_match
542
+ filter_ = val_match
543
543
else :
544
- _filter = filter_lookup
544
+ filter_ = filter_lookup
545
545
546
- return self .__class__ (k for k in self if _filter (k ))
546
+ return self .__class__ (k for k in self if filter_ (k ))
547
547
548
548
def get (
549
549
self ,
0 commit comments