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.
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.
This limit is used to control the size of object types for which no
specific formatting method is available on the Repr object.
It is applied in a similar manner as maxstring. The
default is 20.
Recursive implementation used by 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 repr1() to perform recursive formatting, with
level - 1 for the value of level in the recursive
call.
repr_type(obj, level)
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 repr1().
Type-specific methods which need to recursively format a value
should call "self.repr1(subobj, level - 1)".