summary refs log tree commit diff
diff options
context:
space:
mode:
authorPaul "LeoNerd" Evans <paul@matrix.org>2015-03-25 19:04:59 +0000
committerPaul "LeoNerd" Evans <paul@matrix.org>2015-03-25 19:04:59 +0000
commitd6b3ea75d4eba6961242ce68d5df90557b00609b (patch)
tree99b4dd63358483ff11beef9811a23a36a3a9054c
parentUnit-test that Cache() key eviction is ordered (diff)
downloadsynapse-d6b3ea75d4eba6961242ce68d5df90557b00609b.tar.xz
Implement the 'key in dict' test for LruCache()
-rw-r--r--synapse/util/lrucache.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/synapse/util/lrucache.py b/synapse/util/lrucache.py

index 65d5792907..2f7b615f78 100644 --- a/synapse/util/lrucache.py +++ b/synapse/util/lrucache.py
@@ -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)