summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>2000-10-10 20:58:48 (GMT)
committerFred Drake <fdrake@acm.org>2000-10-10 20:58:48 (GMT)
commit66c9f0781ded9c798764ecc1d3e82d687a307a98 (patch)
tree62a3aae77d001f065ad140744fda27407656c496
parentef52f601ed235bb87767e32a18058b46f14ceb6d (diff)
downloadcpython-66c9f0781ded9c798764ecc1d3e82d687a307a98.zip
cpython-66c9f0781ded9c798764ecc1d3e82d687a307a98.tar.gz
cpython-66c9f0781ded9c798764ecc1d3e82d687a307a98.tar.bz2
Note that the UserString/MutableString classes are far less efficient
than the built-in string types (suggested by Moshe Zadka <moshez@math.huji.ac.il>). Clarified what "can be converted to a string" means. Fixed a few markup nits.
-rw-r--r--Doc/lib/libuserdict.tex40
1 files changed, 22 insertions, 18 deletions
diff --git a/Doc/lib/libuserdict.tex b/Doc/lib/libuserdict.tex
index 62aff77..50d52fa 100644
--- a/Doc/lib/libuserdict.tex
+++ b/Doc/lib/libuserdict.tex
@@ -92,23 +92,26 @@ methods which need to be provided in that case.
\moduleauthor{Peter Funk}{pf@artcom-gmbh.de}
\sectionauthor{Peter Funk}{pf@artcom-gmbh.de}
-This module defines a class that acts as a wrapper around
-string objects. It is a useful base class for
-your own string-like classes, which can inherit from
-them and override existing methods or add new ones. In this way one
-can add new behaviors to strings.
+This module defines a class that acts as a wrapper around string
+objects. It is a useful base class for your own string-like classes,
+which can inherit from them and override existing methods or add new
+ones. In this way one can add new behaviors to strings.
-The \module{UserString} module defines the \class{UserString} class:
+It should be noted that these classes are highly inefficient compared
+to real string or Unicode objects; this is especially the case for
+\class{MutableString}.
+
+The \module{UserString} module defines the following classes:
\begin{classdesc}{UserString}{\optional{sequence}}
-Return a class instance that simulates a string or a Unicode string object.
-The instance's content is kept in a regular string or Unicode string
-object, which is accessible via the
-\member{data} attribute of \class{UserString} instances. The instance's
-contents are initially set to a copy of \var{sequence}.
-\var{sequence} can be either a regular Python string or Unicode string,
-an instance of \class{UserString} (or a subclass) or an arbitrary sequence
-which can be converted into a string.
+Return a class instance that simulates a string or a Unicode string
+object. The instance's content is kept in a regular string or Unicode
+string object, which is accessible via the \member{data} attribute of
+\class{UserString} instances. The instance's contents are initially
+set to a copy of \var{sequence}. \var{sequence} can be either a
+regular Python string or Unicode string, an instance of
+\class{UserString} (or a subclass) or an arbitrary sequence which can
+be converted into a string using the built-in \function{str()} function.
\end{classdesc}
\begin{classdesc}{MutableString}{\optional{sequence}}
@@ -117,14 +120,15 @@ strings to be \emph{mutable}. Mutable strings can't be used as
dictionary keys, because dictionaries require \emph{immutable} objects as
keys. The main intention of this class is to serve as an educational
example for inheritance and necessity to remove (override) the
-\function{__hash__} method in order to trap attempts to use a
+\method{__hash__()} method in order to trap attempts to use a
mutable object as dictionary key, which would be otherwise very
error prone and hard to track down.
\end{classdesc}
-In addition to supporting the methods and operations of string or
-Unicode objects (see section \ref{typesseq}), \class{UserString} instances
-provide the following attribute:
+In addition to supporting the methods and operations of string and
+Unicode objects (see section \ref{string-methods}, ``String
+Methods''), \class{UserString} instances provide the following
+attribute:
\begin{memberdesc}{data}
A real Python string or Unicode object used to store the content of the