[Python-checkins] r45663 - python/trunk/Doc/lib/libcontextlib.tex

nick.coghlan python-checkins at python.org
Sun Apr 23 17:14:38 CEST 2006


Author: nick.coghlan
Date: Sun Apr 23 17:14:37 2006
New Revision: 45663

Modified:
   python/trunk/Doc/lib/libcontextlib.tex
Log:
Update contextlib documentation to use the same terminology as the module implementation

Modified: python/trunk/Doc/lib/libcontextlib.tex
==============================================================================
--- python/trunk/Doc/lib/libcontextlib.tex	(original)
+++ python/trunk/Doc/lib/libcontextlib.tex	Sun Apr 23 17:14:37 2006
@@ -49,8 +49,9 @@
 the error (if any), or ensure that some cleanup takes place.
 
 Note that you can use \code{@contextmanager} to define a context
-manager's \method{__context__} method.  This is usually more convenient
-than creating another class just to serve as a context.  For example:
+object's \method{__context__} method.  This is usually more convenient
+than creating another class just to serve as a context manager.
+For example:
 
 \begin{verbatim}
 from __future__ import with_statement
@@ -97,10 +98,10 @@
             do_something()
 \end{verbatim}
 
-Note that if one of the nested contexts' \method{__exit__()} method
+Note that if the \method{__exit__()} method of one of the nested context managers
 raises an exception, any previous exception state will be lost; the new
-exception will be passed to the outer contexts' \method{__exit__()}
-method(s), if any.  In general, \method{__exit__()} methods should avoid
+exception will be passed to the \method{__exit__()} methods of any remaining
+outer context managers.  In general, \method{__exit__()} methods should avoid
 raising exceptions, and in particular they should not re-raise a
 passed-in exception.
 \end{funcdesc}
@@ -127,9 +128,9 @@
 from contextlib import closing
 import codecs
 
-with closing(codecs.open("foo", encoding="utf8")) as f:
+with closing(urllib.urlopen('http://www.python.org')) as f:
     for line in f:
-        print line.encode("latin1")
+        print line
 \end{verbatim}
 
 without needing to explicitly close \code{f}.  Even if an error occurs,


More information about the Python-checkins mailing list