]> granicus.if.org Git - python/commitdiff
#1748: use functools.wraps instead of rolling own metadata update.
authorGeorg Brandl <georg@python.org>
Wed, 30 Apr 2008 21:08:42 +0000 (21:08 +0000)
committerGeorg Brandl <georg@python.org>
Wed, 30 Apr 2008 21:08:42 +0000 (21:08 +0000)
Lib/contextlib.py

index dbd1c5744d7a3484bcbf833be465cb42873aba54..c9793af6ef4ae58bd5528b31dceaf2de411784c0 100644 (file)
@@ -1,6 +1,7 @@
 """Utilities for with-statement contexts.  See PEP 343."""
 
 import sys
+from functools import wraps
 
 __all__ = ["contextmanager", "nested", "closing"]
 
@@ -77,14 +78,9 @@ def contextmanager(func):
             <cleanup>
 
     """
+    @wraps(func)
     def helper(*args, **kwds):
         return GeneratorContextManager(func(*args, **kwds))
-    try:
-        helper.__name__ = func.__name__
-        helper.__doc__ = func.__doc__
-        helper.__dict__ = func.__dict__
-    except:
-        pass
     return helper