[Python-3000-checkins] r63360 - in python/branches/py3k: 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 Misc/NEWS
alexandre.vassalotti
python-3000-checkins at python.org
Fri May 16 09:12:45 CEST 2008
Author: alexandre.vassalotti
Date: Fri May 16 09:12:44 2008
New Revision: 63360
Log:
Rename the repr module to reprlib.
Merged revisions 63357 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r63357 | alexandre.vassalotti | 2008-05-16 02:58:49 -0400 (Fri, 16 May 2008) | 2 lines
Changed references to the reprlib module to use its new name.
........
Added:
python/branches/py3k/Doc/library/reprlib.rst
- copied unchanged from r63357, /python/trunk/Doc/library/reprlib.rst
Removed:
python/branches/py3k/Doc/library/repr.rst
Modified:
python/branches/py3k/ (props changed)
python/branches/py3k/Demo/pdist/cmptree.py
python/branches/py3k/Demo/pdist/server.py
python/branches/py3k/Doc/tutorial/stdlib2.rst
python/branches/py3k/Lib/bdb.py
python/branches/py3k/Lib/copy.py
python/branches/py3k/Lib/idlelib/Debugger.py
python/branches/py3k/Lib/idlelib/ObjectBrowser.py
python/branches/py3k/Lib/pdb.py
python/branches/py3k/Lib/pydoc.py
python/branches/py3k/Lib/test/test___all__.py
python/branches/py3k/Lib/test/test_repr.py
python/branches/py3k/Misc/NEWS
Modified: python/branches/py3k/Demo/pdist/cmptree.py
==============================================================================
--- python/branches/py3k/Demo/pdist/cmptree.py (original)
+++ python/branches/py3k/Demo/pdist/cmptree.py Fri May 16 09:12:44 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/branches/py3k/Demo/pdist/server.py
==============================================================================
--- python/branches/py3k/Demo/pdist/server.py (original)
+++ python/branches/py3k/Demo/pdist/server.py Fri May 16 09:12:44 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/branches/py3k/Doc/library/repr.rst
==============================================================================
--- python/branches/py3k/Doc/library/repr.rst Fri May 16 09:12:44 2008
+++ (empty file)
@@ -1,133 +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.
-
-
-.. attribute:: Repr.maxlong
-
- Maximum number of characters in the representation for an 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/branches/py3k/Doc/tutorial/stdlib2.rst
==============================================================================
--- python/branches/py3k/Doc/tutorial/stdlib2.rst (original)
+++ python/branches/py3k/Doc/tutorial/stdlib2.rst Fri May 16 09:12:44 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/branches/py3k/Lib/bdb.py
==============================================================================
--- python/branches/py3k/Lib/bdb.py (original)
+++ python/branches/py3k/Lib/bdb.py Fri May 16 09:12:44 2008
@@ -324,7 +324,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)
@@ -337,13 +337,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/branches/py3k/Lib/copy.py
==============================================================================
--- python/branches/py3k/Lib/copy.py (original)
+++ python/branches/py3k/Lib/copy.py Fri May 16 09:12:44 2008
@@ -354,17 +354,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/branches/py3k/Lib/idlelib/Debugger.py
==============================================================================
--- python/branches/py3k/Lib/idlelib/Debugger.py (original)
+++ python/branches/py3k/Lib/idlelib/Debugger.py Fri May 16 09:12:44 2008
@@ -412,8 +412,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/branches/py3k/Lib/idlelib/ObjectBrowser.py
==============================================================================
--- python/branches/py3k/Lib/idlelib/ObjectBrowser.py (original)
+++ python/branches/py3k/Lib/idlelib/ObjectBrowser.py Fri May 16 09:12:44 2008
@@ -11,7 +11,7 @@
from idlelib.TreeWidget import TreeItem, TreeNode, ScrolledCanvas
-from repr import Repr
+from reprlib import Repr
myrepr = Repr()
myrepr.maxstring = 100
Modified: python/branches/py3k/Lib/pdb.py
==============================================================================
--- python/branches/py3k/Lib/pdb.py (original)
+++ python/branches/py3k/Lib/pdb.py Fri May 16 09:12:44 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/branches/py3k/Lib/pydoc.py
==============================================================================
--- python/branches/py3k/Lib/pydoc.py (original)
+++ python/branches/py3k/Lib/pydoc.py Fri May 16 09:12:44 2008
@@ -53,7 +53,7 @@
# path will be displayed.
import sys, imp, os, re, inspect, builtins, pkgutil
-from repr import Repr
+from reprlib import Repr
try:
from collections import deque
except ImportError:
Modified: python/branches/py3k/Lib/test/test___all__.py
==============================================================================
--- python/branches/py3k/Lib/test/test___all__.py (original)
+++ python/branches/py3k/Lib/test/test___all__.py Fri May 16 09:12:44 2008
@@ -114,7 +114,7 @@
self.check_all("quopri")
self.check_all("random")
self.check_all("re")
- self.check_all("repr")
+ self.check_all("reprlib")
self.check_all("rfc822")
self.check_all("rlcompleter")
self.check_all("robotparser")
Modified: python/branches/py3k/Lib/test/test_repr.py
==============================================================================
--- python/branches/py3k/Lib/test/test_repr.py (original)
+++ python/branches/py3k/Lib/test/test_repr.py Fri May 16 09:12:44 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):
Modified: python/branches/py3k/Misc/NEWS
==============================================================================
--- python/branches/py3k/Misc/NEWS (original)
+++ python/branches/py3k/Misc/NEWS Fri May 16 09:12:44 2008
@@ -42,6 +42,8 @@
Library
-------
+- The repr module has been renamed to reprlib.
+
- The statvfs module has been removed.
- #1713041: fix pprint's handling of maximum depth.
More information about the Python-3000-checkins
mailing list