PK!mirror_dict/__init__.py""" MirrorDict provides a mapping that returns the key if no value is found. """ from collections.abc import Mapping class MirrorDict(Mapping): """ Mapping that returns the key if no value is found. >>> snacks = ('cookie', 'biscuit', 'ice cream') >>> synonym = MirrorDict(biscuit='cookie') >>> sorted(set(synonym[snack] for snack in snacks)) ['cookie', 'ice cream'] """ __slots__ = ("_store",) def __init__(self, *args, **kwargs): self._store = dict(*args, **kwargs) def __getitem__(self, key): return self._store.get(key, key) def __iter__(self): return iter(self._store) def __len__(self): return len(self._store) def __repr__(self): return f"{type(self)}({self._store})" PK!HlŃTT!mirror_dict-1.0.1.dist-info/WHEEL A н#J@Z|Jmqvh&#hڭw!Ѭ"J˫( } %PK!H"qQ$mirror_dict-1.0.1.dist-info/METADATASMs0 WƥI(-0rhvWul,c('KzzO (|%N6^:Y`?yf琗V0F'L٧bh;ps& ƐЪਉ8 #Su:l/q٤sȩ&&!vm5Tn6jaO{G_Ci55~*ЏlR^ ɛsu1cJvTXbpOC?)ksu@\JoϏxytƫ3^4(4 yi6K,)ewƒW갾o5RkԻJ}quv?oMmL1l"Xgyc5Y`-h3y2`}5 #~"KACEPK!H -_("mirror_dict-1.0.1.dist-info/RECORD}V0{e 1fW;$)?XB<}x{;J8RЂQA}U,essʳ0QΚrmvzcA{k!kl.8M/k> N5'}j #7߭Hg ֙wb i T|Md~!W7X2~PK!mirror_dict/__init__.pyPK!HlŃTT!Hmirror_dict-1.0.1.dist-info/WHEELPK!H"qQ$mirror_dict-1.0.1.dist-info/METADATAPK!H -_("mirror_dict-1.0.1.dist-info/RECORDPK6