[Python-checkins] CVS: python/dist/src/Doc/lib libstringio.tex,1.4,1.5

Fred L. Drake python-dev@python.org
Tue, 28 Nov 2000 08:24:31 -0800


Update of /cvsroot/python/python/dist/src/Doc/lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv21374/lib

Modified Files:
	libstringio.tex 
Log Message:

Added information on the use of Unicode with the StringIO and cStringIO
modules, otherwise the behavior is just plain confusing.


Index: libstringio.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libstringio.tex,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** libstringio.tex	1999/04/21 18:15:22	1.4
--- libstringio.tex	2000/11/28 16:24:28	1.5
***************
*** 8,12 ****
  This module implements a file-like class, \class{StringIO},
  that reads and writes a string buffer (also known as \emph{memory
! files}). See the description on file objects for operations (section
  \ref{bltin-file-objects}).
  
--- 8,12 ----
  This module implements a file-like class, \class{StringIO},
  that reads and writes a string buffer (also known as \emph{memory
! files}).  See the description of file objects for operations (section
  \ref{bltin-file-objects}).
  
***************
*** 15,18 ****
--- 15,24 ----
  to an existing string by passing the string to the constructor.
  If no string is given, the \class{StringIO} will start empty.
+ 
+ The \class{StringIO} object can accept either Unicode or 8-bit
+ strings, but mixing the two may take some care.  If both are used,
+ 8-bit strings that cannot be interpreted as 7-bit \ASCII{} (i.e., that
+ use the 8th bit) will cause a \exception{UnicodeError} to be raised
+ when \method{getvalue()} is called.
  \end{classdesc}
  
***************
*** 22,26 ****
  \begin{methoddesc}{getvalue}{}
  Retrieve the entire contents of the ``file'' at any time before the
! \class{StringIO} object's \method{close()} method is called.
  \end{methoddesc}
  
--- 28,34 ----
  \begin{methoddesc}{getvalue}{}
  Retrieve the entire contents of the ``file'' at any time before the
! \class{StringIO} object's \method{close()} method is called.  See the
! note above for information about mixing Unicode and 8-bit strings;
! such mixing can cause this method to raise \exception{UnicodeError}.
  \end{methoddesc}
  
***************
*** 47,50 ****
--- 55,62 ----
  built-in types, there's no way to build your own version using
  subclassing.  Use the original \refmodule{StringIO} module in that case.
+ 
+ Unlike the memory files implemented by the \refmodule{StringIO}
+ module, those provided by this module are not able to accept Unicode
+ strings that cannot be encoded as plain \ASCII{} strings.
  
  The following data objects are provided as well: