Skip to content

Commit bf11110

Browse files
committed
Fixed type compatibility for python version 3.9 #3
1 parent d74c8e7 commit bf11110

File tree

1 file changed

+1
-18
lines changed

1 file changed

+1
-18
lines changed

portion/dict.py

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
Mapping,
1010
MutableMapping,
1111
)
12-
from typing import Generic, Protocol, TypeVar, cast, overload, override
12+
from typing import Generic, Protocol, TypeVar, cast, overload
1313

1414
from sortedcontainers import SortedDict
1515
from sortedcontainers.sorteddict import ItemsView, KeysView, ValuesView
@@ -97,7 +97,6 @@ def _from_items(cls, items: Collection[tuple[object, V]]):
9797

9898
return d
9999

100-
@override
101100
def clear(self):
102101
"""
103102
Remove all items from the IntervalDict.
@@ -120,7 +119,6 @@ def get(
120119
self, key: Interval, default: V | None = None
121120
) -> "IntervalDict[V] | None": ...
122121

123-
@override
124122
def get(
125123
self, key: object | Interval, default: V | None = None
126124
) -> "IntervalDict[V]" | V | None:
@@ -165,7 +163,6 @@ def find(self, value: V) -> Interval:
165163
),
166164
)
167165

168-
@override
169166
def items(self) -> ItemsView[Interval, V]:
170167
"""
171168
Return a view object on the contained items sorted by their key
@@ -175,7 +172,6 @@ def items(self) -> ItemsView[Interval, V]:
175172
"""
176173
return self._storage.items()
177174

178-
@override
179175
def keys(self) -> KeysView[Interval]:
180176
"""
181177
Return a view object on the contained keys (sorted)
@@ -185,7 +181,6 @@ def keys(self) -> KeysView[Interval]:
185181
"""
186182
return self._storage.keys()
187183

188-
@override
189184
def values(self) -> ValuesView[V]:
190185
"""
191186
Return a view object on the contained values sorted by their key
@@ -209,7 +204,6 @@ def pop(self, key: Interval, default: V | None = None) -> "IntervalDict[V]": ...
209204
@overload
210205
def pop(self, key: object, default: V | None = None) -> V | None: ...
211206

212-
@override
213207
def pop(
214208
self, key: object, default: V | None = None
215209
) -> "IntervalDict[V]" | V | None:
@@ -235,7 +229,6 @@ def pop(
235229
del self[key]
236230
return value
237231

238-
@override
239232
def popitem(self) -> tuple[Interval, V]:
240233
"""
241234
Remove and return some (key, value) pair as a 2-tuple.
@@ -253,7 +246,6 @@ def setdefault(
253246
@overload
254247
def setdefault(self, key: object, default: V | None = None) -> V: ...
255248

256-
@override
257249
def setdefault(
258250
self, key: object, default: V | None = None
259251
) -> V | "IntervalDict[V]" | None:
@@ -278,7 +270,6 @@ def setdefault(
278270
self[key] = default
279271
return default
280272

281-
@override
282273
def update(
283274
self,
284275
mapping_or_iterable: Mapping[object, V]
@@ -387,7 +378,6 @@ def __getitem__(self, key: Interval) -> "IntervalDict[V]": ...
387378
@overload
388379
def __getitem__(self, key: object) -> V: ...
389380

390-
@override
391381
def __getitem__(self, key: object | Interval) -> V | "IntervalDict[V]":
392382
if isinstance(key, Interval):
393383
items = []
@@ -409,7 +399,6 @@ def __getitem__(self, key: object | Interval) -> V | "IntervalDict[V]":
409399
return v
410400
raise KeyError(key)
411401

412-
@override
413402
def __setitem__(self, key: object | Interval, value: V | None):
414403
if isinstance(key, Interval):
415404
interval = key
@@ -448,7 +437,6 @@ def __setitem__(self, key: object | Interval, value: V | None):
448437
for key, value in added_items:
449438
self._storage[key] = value
450439

451-
@override
452440
def __delitem__(self, key: object | Interval):
453441
if isinstance(key, Interval):
454442
interval = key
@@ -493,25 +481,20 @@ def __ior__(self, other: "IntervalDict[V]") -> "IntervalDict[V]":
493481
self.update(other)
494482
return self
495483

496-
@override
497484
def __iter__(self) -> Iterator[object]:
498485
return iter(self._storage)
499486

500-
@override
501487
def __len__(self) -> int:
502488
return len(self._storage)
503489

504-
@override
505490
def __contains__(self, key: object) -> bool:
506491
return key in self.domain()
507492

508-
@override
509493
def __repr__(self):
510494
return "{{{}}}".format(
511495
", ".join(f"{i!r}: {v!r}" for i, v in self.items()),
512496
)
513497

514-
@override
515498
def __eq__(self, other: object) -> bool:
516499
if isinstance(other, IntervalDict):
517500
return self.as_dict() == other.as_dict()

0 commit comments

Comments
 (0)