[Python-checkins] r63357 - in python/trunk: Demo/pdist/cmptree.py Demo/pdist/server.py Doc/library/repr.rst Doc/library/reprlib.rst Doc/tutorial/stdlib2.rst Lib/bdb.py Lib/copy.py Lib/idlelib/Debugger.py Lib/idlelib/ObjectBrowser.py Lib/pdb.py Lib/pydoc.py Lib/test/test___all__.py Lib/test/test_repr.py
alexandre.vassalotti
python-checkins at python.org
Fri May 16 08:58:50 CEST 2008
Author: alexandre.vassalotti
Date: Fri May 16 08:58:49 2008
New Revision: 63357
Log:
Changed references to the reprlib module to use its new name.
Added:
python/trunk/Doc/library/reprlib.rst
Removed:
python/trunk/Doc/library/repr.rst
Modified:
python/trunk/Demo/pdist/cmptree.py
python/trunk/Demo/pdist/server.py
python/trunk/Doc/tutorial/stdlib2.rst
python/trunk/Lib/bdb.py
python/trunk/Lib/copy.py
python/trunk/Lib/idlelib/Debugger.py
python/trunk/Lib/idlelib/ObjectBrowser.py
python/trunk/Lib/pdb.py
python/trunk/Lib/pydoc.py
python/trunk/Lib/test/test___all__.py
python/trunk/Lib/test/test_repr.py
Modified: python/trunk/Demo/pdist/cmptree.py
==============================================================================
--- python/trunk/Demo/pdist/cmptree.py (original)
+++ python/trunk/Demo/pdist/cmptree.py Fri May 16 08:58:49 2008
@@ -1,7 +1,7 @@
"""Compare local and remote dictionaries and transfer differing files -- like rdist."""
import sys
-from repr import repr
+from reprlib import repr
import FSProxy
import time
import os
Modified: python/trunk/Demo/pdist/server.py
==============================================================================
--- python/trunk/Demo/pdist/server.py (original)
+++ python/trunk/Demo/pdist/server.py Fri May 16 08:58:49 2008
@@ -4,7 +4,7 @@
import socket
import pickle
from fnmatch import fnmatch
-from repr import repr
+from reprlib import repr
# Default verbosity (0 = silent, 1 = print connections, 2 = print requests too)
Deleted: python/trunk/Doc/library/repr.rst
==============================================================================
--- python/trunk/Doc/library/repr.rst Fri May 16 08:58:49 2008
+++ (empty file)
@@ -1,136 +0,0 @@
-
-:mod:`repr` --- Alternate :func:`repr` implementation
-=====================================================
-
-.. module:: repr
- :synopsis: Alternate repr() implementation with size limits.
-.. sectionauthor:: Fred L. Drake, Jr. <fdrake at acm.org>
-
-
-The :mod:`repr` module provides a means for producing object representations
-with limits on the size of the resulting strings. This is used in the Python
-debugger and may be useful in other contexts as well.
-
-This module provides a class, an instance, and a function:
-
-
-.. class:: Repr()
-
- Class which provides formatting services useful in implementing functions
- similar to the built-in :func:`repr`; size limits for different object types
- are added to avoid the generation of representations which are excessively long.
-
-
-.. data:: aRepr
-
- This is an instance of :class:`Repr` which is used to provide the :func:`repr`
- function described below. Changing the attributes of this object will affect
- the size limits used by :func:`repr` and the Python debugger.
-
-
-.. function:: repr(obj)
-
- This is the :meth:`repr` method of ``aRepr``. It returns a string similar to
- that returned by the built-in function of the same name, but with limits on
- most sizes.
-
-
-.. _repr-objects:
-
-Repr Objects
-------------
-
-:class:`Repr` instances provide several members which can be used to provide
-size limits for the representations of different object types, and methods
-which format specific object types.
-
-
-.. attribute:: Repr.maxlevel
-
- Depth limit on the creation of recursive representations. The default is ``6``.
-
-
-.. attribute:: Repr.maxdict
- Repr.maxlist
- Repr.maxtuple
- Repr.maxset
- Repr.maxfrozenset
- Repr.maxdeque
- Repr.maxarray
-
- Limits on the number of entries represented for the named object type. The
- default is ``4`` for :attr:`maxdict`, ``5`` for :attr:`maxarray`, and ``6`` for
- the others.
-
- .. versionadded:: 2.4
- :attr:`maxset`, :attr:`maxfrozenset`, and :attr:`set`.
-
-
-.. attribute:: Repr.maxlong
-
- Maximum number of characters in the representation for a long integer. Digits
- are dropped from the middle. The default is ``40``.
-
-
-.. attribute:: Repr.maxstring
-
- Limit on the number of characters in the representation of the string. Note
- that the "normal" representation of the string is used as the character source:
- if escape sequences are needed in the representation, these may be mangled when
- the representation is shortened. The default is ``30``.
-
-
-.. attribute:: Repr.maxother
-
- This limit is used to control the size of object types for which no specific
- formatting method is available on the :class:`Repr` object. It is applied in a
- similar manner as :attr:`maxstring`. The default is ``20``.
-
-
-.. method:: Repr.repr(obj)
-
- The equivalent to the built-in :func:`repr` that uses the formatting imposed by
- the instance.
-
-
-.. method:: Repr.repr1(obj, level)
-
- Recursive implementation used by :meth:`repr`. This uses the type of *obj* to
- determine which formatting method to call, passing it *obj* and *level*. The
- type-specific methods should call :meth:`repr1` to perform recursive formatting,
- with ``level - 1`` for the value of *level* in the recursive call.
-
-
-.. method:: Repr.repr_TYPE(obj, level)
- :noindex:
-
- Formatting methods for specific types are implemented as methods with a name
- based on the type name. In the method name, **TYPE** is replaced by
- ``string.join(string.split(type(obj).__name__, '_'))``. Dispatch to these
- methods is handled by :meth:`repr1`. Type-specific methods which need to
- recursively format a value should call ``self.repr1(subobj, level - 1)``.
-
-
-.. _subclassing-reprs:
-
-Subclassing Repr Objects
-------------------------
-
-The use of dynamic dispatching by :meth:`Repr.repr1` allows subclasses of
-:class:`Repr` to add support for additional built-in object types or to modify
-the handling of types already supported. This example shows how special support
-for file objects could be added::
-
- import repr
- import sys
-
- class MyRepr(repr.Repr):
- def repr_file(self, obj, level):
- if obj.name in ['<stdin>', '<stdout>', '<stderr>']:
- return obj.name
- else:
- return `obj`
-
- aRepr = MyRepr()
- print aRepr.repr(sys.stdin) # prints '<stdin>'
-
Added: python/trunk/Doc/library/reprlib.rst
==============================================================================
--- (empty file)
+++ python/trunk/Doc/library/reprlib.rst Fri May 16 08:58:49 2008
@@ -0,0 +1,136 @@
+
+:mod:`reprlib` --- Alternate :func:`repr` implementation
+=====================================================
+
+.. module:: reprlib
+ :synopsis: Alternate repr() implementation with size limits.
+.. sectionauthor:: Fred L. Drake, Jr. <fdrake at acm.org>
+
+
+The :mod:`reprlib` module provides a means for producing object representations
+with limits on the size of the resulting strings. This is used in the Python
+debugger and may be useful in other contexts as well.
+
+This module provides a class, an instance, and a function:
+
+
+.. class:: Repr()
+
+ Class which provides formatting services useful in implementing functions
+ similar to the built-in :func:`repr`; size limits for different object types
+ are added to avoid the generation of representations which are excessively long.
+
+
+.. data:: aRepr
+
+ This is an instance of :class:`Repr` which is used to provide the :func:`repr`
+ function described below. Changing the attributes of this object will affect
+ the size limits used by :func:`repr` and the Python debugger.
+
+
+.. function:: repr(obj)
+
+ This is the :meth:`repr` method of ``aRepr``. It returns a string similar to
+ that returned by the built-in function of the same name, but with limits on
+ most sizes.
+
+
+.. _repr-objects:
+
+Repr Objects
+------------
+
+:class:`Repr` instances provide several members which can be used to provide
+size limits for the representations of different object types, and methods
+which format specific object types.
+
+
+.. attribute:: Repr.maxlevel
+
+ Depth limit on the creation of recursive representations. The default is ``6``.
+
+
+.. attribute:: Repr.maxdict
+ Repr.maxlist
+ Repr.maxtuple
+ Repr.maxset
+ Repr.maxfrozenset
+ Repr.maxdeque
+ Repr.maxarray
+
+ Limits on the number of entries represented for the named object type. The
+ default is ``4`` for :attr:`maxdict`, ``5`` for :attr:`maxarray`, and ``6`` for
+ the others.
+
+ .. versionadded:: 2.4
+ :attr:`maxset`, :attr:`maxfrozenset`, and :attr:`set`.
+
+
+.. attribute:: Repr.maxlong
+
+ Maximum number of characters in the representation for a long integer. Digits
+ are dropped from the middle. The default is ``40``.
+
+
+.. attribute:: Repr.maxstring
+
+ Limit on the number of characters in the representation of the string. Note
+ that the "normal" representation of the string is used as the character source:
+ if escape sequences are needed in the representation, these may be mangled when
+ the representation is shortened. The default is ``30``.
+
+
+.. attribute:: Repr.maxother
+
+ This limit is used to control the size of object types for which no specific
+ formatting method is available on the :class:`Repr` object. It is applied in a
+ similar manner as :attr:`maxstring`. The default is ``20``.
+
+
+.. method:: Repr.repr(obj)
+
+ The equivalent to the built-in :func:`repr` that uses the formatting imposed by
+ the instance.
+
+
+.. method:: Repr.repr1(obj, level)
+
+ Recursive implementation used by :meth:`repr`. This uses the type of *obj* to
+ determine which formatting method to call, passing it *obj* and *level*. The
+ type-specific methods should call :meth:`repr1` to perform recursive formatting,
+ with ``level - 1`` for the value of *level* in the recursive call.
+
+
+.. method:: Repr.repr_TYPE(obj, level)
+ :noindex:
+
+ Formatting methods for specific types are implemented as methods with a name
+ based on the type name. In the method name, **TYPE** is replaced by
+ ``string.join(string.split(type(obj).__name__, '_'))``. Dispatch to these
+ methods is handled by :meth:`repr1`. Type-specific methods which need to
+ recursively format a value should call ``self.repr1(subobj, level - 1)``.
+
+
+.. _subclassing-reprs:
+
+Subclassing Repr Objects
+------------------------
+
+The use of dynamic dispatching by :meth:`Repr.repr1` allows subclasses of
+:class:`Repr` to add support for additional built-in object types or to modify
+the handling of types already supported. This example shows how special support
+for file objects could be added::
+
+ import repr
+ import sys
+
+ class MyRepr(repr.Repr):
+ def repr_file(self, obj, level):
+ if obj.name in ['<stdin>', '<stdout>', '<stderr>']:
+ return obj.name
+ else:
+ return `obj`
+
+ aRepr = MyRepr()
+ print aRepr.repr(sys.stdin) # prints '<stdin>'
+
Modified: python/trunk/Doc/tutorial/stdlib2.rst
==============================================================================
--- python/trunk/Doc/tutorial/stdlib2.rst (original)
+++ python/trunk/Doc/tutorial/stdlib2.rst Fri May 16 08:58:49 2008
@@ -13,11 +13,11 @@
Output Formatting
=================
-The :mod:`repr` module provides a version of :func:`repr` customized for
+The :mod:`reprlib` module provides a version of :func:`repr` customized for
abbreviated displays of large or deeply nested containers::
- >>> import repr
- >>> repr.repr(set('supercalifragilisticexpialidocious'))
+ >>> import reprlib
+ >>> reprlib.repr(set('supercalifragilisticexpialidocious'))
"set(['a', 'c', 'd', 'e', 'f', 'g', ...])"
The :mod:`pprint` module offers more sophisticated control over printing both
Modified: python/trunk/Lib/bdb.py
==============================================================================
--- python/trunk/Lib/bdb.py (original)
+++ python/trunk/Lib/bdb.py Fri May 16 08:58:49 2008
@@ -325,7 +325,7 @@
#
def format_stack_entry(self, frame_lineno, lprefix=': '):
- import linecache, repr
+ import linecache, reprlib
frame, lineno = frame_lineno
filename = self.canonic(frame.f_code.co_filename)
s = '%s(%r)' % (filename, lineno)
@@ -338,13 +338,13 @@
else:
args = None
if args:
- s = s + repr.repr(args)
+ s = s + reprlib.repr(args)
else:
s = s + '()'
if '__return__' in frame.f_locals:
rv = frame.f_locals['__return__']
s = s + '->'
- s = s + repr.repr(rv)
+ s = s + reprlib.repr(rv)
line = linecache.getline(filename, lineno)
if line: s = s + lprefix + line.strip()
return s
Modified: python/trunk/Lib/copy.py
==============================================================================
--- python/trunk/Lib/copy.py (original)
+++ python/trunk/Lib/copy.py Fri May 16 08:58:49 2008
@@ -399,17 +399,16 @@
print l2
l.append({l[1]: l, 'xyz': l[2]})
l3 = copy(l)
- import repr
- print map(repr.repr, l)
- print map(repr.repr, l1)
- print map(repr.repr, l2)
- print map(repr.repr, l3)
+ import reprlib
+ print map(reprlib.repr, l)
+ print map(reprlib.repr, l1)
+ print map(reprlib.repr, l2)
+ print map(reprlib.repr, l3)
l3 = deepcopy(l)
- import repr
- print map(repr.repr, l)
- print map(repr.repr, l1)
- print map(repr.repr, l2)
- print map(repr.repr, l3)
+ print map(reprlib.repr, l)
+ print map(reprlib.repr, l1)
+ print map(reprlib.repr, l2)
+ print map(reprlib.repr, l3)
if __name__ == '__main__':
_test()
Modified: python/trunk/Lib/idlelib/Debugger.py
==============================================================================
--- python/trunk/Lib/idlelib/Debugger.py (original)
+++ python/trunk/Lib/idlelib/Debugger.py Fri May 16 08:58:49 2008
@@ -413,8 +413,8 @@
height = 20*len(dict) # XXX 20 == observed height of Entry widget
self.master = master
self.title = title
- import repr
- self.repr = repr.Repr()
+ import reprlib
+ self.repr = reprlib.Repr()
self.repr.maxstring = 60
self.repr.maxother = 60
self.frame = frame = Frame(master)
Modified: python/trunk/Lib/idlelib/ObjectBrowser.py
==============================================================================
--- python/trunk/Lib/idlelib/ObjectBrowser.py (original)
+++ python/trunk/Lib/idlelib/ObjectBrowser.py Fri May 16 08:58:49 2008
@@ -11,7 +11,7 @@
from TreeWidget import TreeItem, TreeNode, ScrolledCanvas
-from repr import Repr
+from reprlib import Repr
myrepr = Repr()
myrepr.maxstring = 100
Modified: python/trunk/Lib/pdb.py
==============================================================================
--- python/trunk/Lib/pdb.py (original)
+++ python/trunk/Lib/pdb.py Fri May 16 08:58:49 2008
@@ -8,7 +8,7 @@
import linecache
import cmd
import bdb
-from repr import Repr
+from reprlib import Repr
import os
import re
import pprint
Modified: python/trunk/Lib/pydoc.py
==============================================================================
--- python/trunk/Lib/pydoc.py (original)
+++ python/trunk/Lib/pydoc.py Fri May 16 08:58:49 2008
@@ -53,7 +53,7 @@
# path will be displayed.
import sys, imp, os, re, types, inspect, __builtin__, pkgutil
-from repr import Repr
+from reprlib import Repr
from string import expandtabs, find, join, lower, split, strip, rfind, rstrip
try:
from collections import deque
Modified: python/trunk/Lib/test/test___all__.py
==============================================================================
--- python/trunk/Lib/test/test___all__.py (original)
+++ python/trunk/Lib/test/test___all__.py Fri May 16 08:58:49 2008
@@ -123,7 +123,7 @@
self.check_all("quopri")
self.check_all("random")
self.check_all("re")
- self.check_all("repr")
+ self.check_all("reprlib")
self.check_all("rexec")
self.check_all("rfc822")
self.check_all("rlcompleter")
Modified: python/trunk/Lib/test/test_repr.py
==============================================================================
--- python/trunk/Lib/test/test_repr.py (original)
+++ python/trunk/Lib/test/test_repr.py Fri May 16 08:58:49 2008
@@ -9,8 +9,8 @@
import unittest
from test.test_support import run_unittest
-from repr import repr as r # Don't shadow builtin repr
-from repr import Repr
+from reprlib import repr as r # Don't shadow builtin repr
+from reprlib import Repr
def nestedTuple(nesting):
More information about the Python-checkins
mailing list