[Python-checkins] cpython: Section-off the source for better readability.

raymond.hettinger python-checkins at python.org
Sat Mar 17 08:24:15 CET 2012


http://hg.python.org/cpython/rev/66803fd0a6bc
changeset:   75776:66803fd0a6bc
user:        Raymond Hettinger <python at rcn.com>
date:        Sat Mar 17 00:24:09 2012 -0700
summary:
  Section-off the source for better readability.

files:
  Lib/functools.py |  23 +++++++++++++++++++++++
  1 files changed, 23 insertions(+), 0 deletions(-)


diff --git a/Lib/functools.py b/Lib/functools.py
--- a/Lib/functools.py
+++ b/Lib/functools.py
@@ -18,6 +18,11 @@
 except:
     from _dummy_thread import allocate_lock as Lock
 
+
+################################################################################
+### update_wrapper() and wraps() decorator
+################################################################################
+
 # update_wrapper() and wraps() are tools to help write
 # wrapper functions that can handle naive introspection
 
@@ -66,6 +71,11 @@
     return partial(update_wrapper, wrapped=wrapped,
                    assigned=assigned, updated=updated)
 
+
+################################################################################
+### total_ordering class decorator
+################################################################################
+
 def total_ordering(cls):
     """Class decorator that fills in missing ordering methods"""
     convert = {
@@ -94,6 +104,11 @@
             setattr(cls, opname, opfunc)
     return cls
 
+
+################################################################################
+### cmp_to_key() function converter
+################################################################################
+
 def cmp_to_key(mycmp):
     """Convert a cmp= function into a key= function"""
     class K(object):
@@ -120,6 +135,11 @@
 except ImportError:
     pass
 
+
+################################################################################
+### LRU Cache function decorator
+################################################################################
+
 _CacheInfo = namedtuple("CacheInfo", ["hits", "misses", "maxsize", "currsize"])
 
 def lru_cache(maxsize=100, typed=False):
@@ -170,6 +190,7 @@
             return key
 
         if maxsize is None:
+
             @wraps(user_function)
             def wrapper(*args, **kwds):
                 # simple caching without ordering or size limit
@@ -183,7 +204,9 @@
                 cache[key] = result
                 misses += 1
                 return result
+
         else:
+
             @wraps(user_function)
             def wrapper(*args, **kwds):
                 # size limited caching that tracks accesses by recency

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list