summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2008-02-21 22:11:37 (GMT)
committerRaymond Hettinger <python@rcn.com>2008-02-21 22:11:37 (GMT)
commitb3a65f8d19f55437406a446927238a9e6f7d3902 (patch)
treec2f8e9d8e222595c153e8d7b38815cd7d1f056fb /Doc
parent6f7140c762710ee8412cb07e87194d1de087ce9b (diff)
downloadcpython-b3a65f8d19f55437406a446927238a9e6f7d3902.zip
cpython-b3a65f8d19f55437406a446927238a9e6f7d3902.tar.gz
cpython-b3a65f8d19f55437406a446927238a9e6f7d3902.tar.bz2
Move UserString to collections.
Removed decode() method. Added isidentifier() and format() methods. Drop MutableUserString class.
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/collections.rst19
-rw-r--r--Doc/library/datatypes.rst1
-rw-r--r--Doc/library/userdict.rst61
3 files changed, 19 insertions, 62 deletions
diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst
index bb2140c..1d6687d 100644
--- a/Doc/library/collections.rst
+++ b/Doc/library/collections.rst
@@ -706,3 +706,22 @@ If a derived class does not wish to comply with this requirement, all of the
special methods supported by this class will need to be overridden; please
consult the sources for information about the methods which need to be provided
in that case.
+
+:class:`UserString` objects
+-------------------------
+
+The class, :class:`UserString` acts as a wrapper around string objects.
+The need for this class has been partially supplanted by the ability to
+subclass directly from :class:`str`; however, this class can be easier
+to work with because the underlying string is accessible as an
+attribute.
+
+.. class:: UserString([sequence])
+
+ Class that simulates a string or a Unicode string object. The instance's
+ content is kept in a regular string object, which is accessible via the
+ :attr:`data` attribute of :class:`UserString` instances. The instance's
+ contents are initially set to a copy of *sequence*. The *sequence* can
+ be an instance of :class:`bytes`, :class:`str`, :class:`UserString` (or a
+ subclass) or an arbitrary sequence which can be converted into a string using
+ the built-in :func:`str` function.
diff --git a/Doc/library/datatypes.rst b/Doc/library/datatypes.rst
index 496fd41..ae76e72 100644
--- a/Doc/library/datatypes.rst
+++ b/Doc/library/datatypes.rst
@@ -29,7 +29,6 @@ The following modules are documented in this chapter:
mutex.rst
queue.rst
weakref.rst
- userdict.rst
types.rst
copy.rst
pprint.rst
diff --git a/Doc/library/userdict.rst b/Doc/library/userdict.rst
deleted file mode 100644
index ebdec7c..0000000
--- a/Doc/library/userdict.rst
+++ /dev/null
@@ -1,61 +0,0 @@
-
-:mod:`UserString` --- Class wrapper for string objects
-======================================================
-
-.. module:: UserString
- :synopsis: Class wrapper for string objects.
-.. moduleauthor:: Peter Funk <pf@artcom-gmbh.de>
-.. sectionauthor:: Peter Funk <pf@artcom-gmbh.de>
-
-
-.. note::
-
- This :class:`UserString` class from this module is available for backward
- compatibility only. If you are writing code that does not need to work with
- versions of Python earlier than Python 2.2, please consider subclassing directly
- from the built-in :class:`str` type instead of using :class:`UserString` (there
- is no built-in equivalent to :class:`MutableString`).
-
-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.
-
-It should be noted that these classes are highly inefficient compared to real
-string or bytes objects; this is especially the case for
-:class:`MutableString`.
-
-The :mod:`UserString` module defines the following classes:
-
-
-.. class:: UserString([sequence])
-
- Class 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 :attr:`data` attribute of :class:`UserString` instances. The
- instance's contents are initially set to a copy of *sequence*. *sequence* can
- be an instance of :class:`bytes`, :class:`str`, :class:`UserString` (or a
- subclass) or an arbitrary sequence which can be converted into a string using
- the built-in :func:`str` function.
-
-
-.. class:: MutableString([sequence])
-
- This class is derived from the :class:`UserString` above and redefines strings
- to be *mutable*. Mutable strings can't be used as dictionary keys, because
- dictionaries require *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 :meth:`__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.
-
-In addition to supporting the methods and operations of bytes and string
-objects (see section :ref:`string-methods`), :class:`UserString` instances
-provide the following attribute:
-
-
-.. attribute:: MutableString.data
-
- A real Python string or bytes object used to store the content of the
- :class:`UserString` class.
-