mirror of
https://github.com/element-hq/synapse
synced 2024-08-18 23:50:52 +00:00
Implement the 'key in dict' test for LruCache()
This commit is contained in:
parent
7ab9f91a60
commit
d6b3ea75d4
1 changed files with 7 additions and 0 deletions
|
@ -90,12 +90,16 @@ class LruCache(object):
|
|||
def cache_len():
|
||||
return len(cache)
|
||||
|
||||
def cache_contains(key):
|
||||
return key in cache
|
||||
|
||||
self.sentinel = object()
|
||||
self.get = cache_get
|
||||
self.set = cache_set
|
||||
self.setdefault = cache_set_default
|
||||
self.pop = cache_pop
|
||||
self.len = cache_len
|
||||
self.contains = cache_contains
|
||||
|
||||
def __getitem__(self, key):
|
||||
result = self.get(key, self.sentinel)
|
||||
|
@ -114,3 +118,6 @@ class LruCache(object):
|
|||
|
||||
def __len__(self):
|
||||
return self.len()
|
||||
|
||||
def __contains__(self, key):
|
||||
return self.contains(key)
|
||||
|
|
Loading…
Reference in a new issue