Update jaraco.collections==3.5.1

[skip ci]
This commit is contained in:
JonnyWong16 2022-04-12 18:38:55 -07:00
commit 3e8ef3c1b4
No known key found for this signature in database
GPG key ID: B1F1F9807184697A

View file

@ -573,12 +573,16 @@ class DictStack(list, collections.abc.Mapping):
2 2
>>> stack['c'] >>> stack['c']
2 2
>>> len(stack)
3
>>> stack.push(dict(a=3)) >>> stack.push(dict(a=3))
>>> stack['a'] >>> stack['a']
3 3
>>> set(stack.keys()) == set(['a', 'b', 'c']) >>> set(stack.keys()) == set(['a', 'b', 'c'])
True True
>>> dict(**stack) == dict(a=3, c=2, b=2) >>> set(stack.items()) == set([('a', 3), ('b', 2), ('c', 2)])
True
>>> dict(**stack) == dict(stack) == dict(a=3, c=2, b=2)
True True
>>> d = stack.pop() >>> d = stack.pop()
>>> stack['a'] >>> stack['a']
@ -587,19 +591,28 @@ class DictStack(list, collections.abc.Mapping):
>>> stack['a'] >>> stack['a']
1 1
>>> stack.get('b', None) >>> stack.get('b', None)
>>> 'c' in stack
True
""" """
def keys(self): def __iter__(self):
return list(set(itertools.chain.from_iterable(c.keys() for c in self))) dicts = list.__iter__(self)
return iter(set(itertools.chain.from_iterable(c.keys() for c in dicts)))
def __getitem__(self, key): def __getitem__(self, key):
for scope in reversed(self): for scope in reversed(tuple(list.__iter__(self))):
if key in scope: if key in scope:
return scope[key] return scope[key]
raise KeyError(key) raise KeyError(key)
push = list.append push = list.append
def __contains__(self, other):
return collections.abc.Mapping.__contains__(self, other)
def __len__(self):
return len(list(iter(self)))
class BijectiveMap(dict): class BijectiveMap(dict):
""" """