Quick search

Table Of Contents

Source code for kivy.storage.dictstore

'''
Dictionary store
=================

Use a Python dictionary as a store.
'''

__all__ = ('DictStore', )


from kivy.compat import iteritems
from kivy.storage import AbstractStore


[docs]class DictStore(AbstractStore): '''Store implementation using a simple `dict`. ''' def __init__(self, data=None, **kwargs): super(DictStore, self).__init__(**kwargs) if data is None: data = {} self.data = data def store_exists(self, key): return key in self.data def store_get(self, key): return self.data[key] def store_put(self, key, value): self.data[key] = value return True def store_delete(self, key): del self.data[key] return True def store_find(self, filters): for key, values in iteritems(self.data): found = True for fkey, fvalue in iteritems(filters): if fkey not in values: found = False break if values[fkey] != fvalue: found = False break if found: yield key, values def store_count(self): return len(self.data) def store_keys(self): return self.data.keys()