From d37fb559102d9c20786d8578a0362d1cd44aada2 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Fri, 16 Mar 2012 17:04:11 -0700 Subject: Unique sentinel value for cache.get() --- Lib/functools.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Lib/functools.py b/Lib/functools.py index adc7927..3eb55c6 100644 --- a/Lib/functools.py +++ b/Lib/functools.py @@ -175,8 +175,8 @@ def lru_cache(maxsize=100, typed=False): # simple caching without ordering or size limit nonlocal hits, misses key = make_key(args, kwds, typed) if kwds or typed else args - result = cache_get(key) - if result is not None: + result = cache_get(key, root) # root used here as a unique not-found sentinel + if result is not root: hits += 1 return result result = user_function(*args, **kwds) -- cgit v0.12