Unique sentinel value for cache.get()

This commit is contained in:
Raymond Hettinger 2012-03-16 17:04:11 -07:00
parent 6e8c817687
commit d37fb55910

View file

@ -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)