Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7babc1b

Browse files
committed
Better method name. Tighten inner-loop with bound methods.
1 parent d5c3f6c commit 7babc1b

2 files changed

Lines changed: 4 additions & 3 deletions

File tree

Lib/collections.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ def __eq__(self, other):
173173
def __del__(self):
174174
self.clear() # eliminate cyclical references
175175

176-
def _move_to_end(self, key, PREV=0, NEXT=1):
176+
def _renew(self, key, PREV=0, NEXT=1):
177177
'Fast version of self[key]=self.pop(key). Private method for internal use.'
178178
link = self.__map[key]
179179
link_prev = link[PREV]

Lib/functools.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ def lru_cache(maxsize=100):
128128
def decorating_function(user_function, tuple=tuple, sorted=sorted,
129129
len=len, KeyError=KeyError):
130130
cache = OrderedDict() # ordered least recent to most recent
131+
cache_popitem, cache_renew = cache.popitem, cache._renew
131132
kwd_mark = object() # separate positional and keyword args
132133
lock = Lock()
133134

@@ -139,15 +140,15 @@ def wrapper(*args, **kwds):
139140
try:
140141
with lock:
141142
result = cache[key]
142-
cache._move_to_end(key) # record recent use of this key
143+
cache_renew(key) # record recent use of this key
143144
wrapper.hits += 1
144145
except KeyError:
145146
result = user_function(*args, **kwds)
146147
with lock:
147148
cache[key] = result # record recent use of this key
148149
wrapper.misses += 1
149150
if len(cache) > maxsize:
150-
cache.popitem(0) # purge least recently used cache entry
151+
cache_popitem(0) # purge least recently used cache entry
151152
return result
152153

153154
def clear():

0 commit comments

Comments
 (0)