added REF prefix to referent numbers

This commit is contained in:
Darren Ranalli 2006-06-29 18:16:38 +00:00
parent 09980a0444
commit 4071b0cbbe
2 changed files with 7 additions and 5 deletions

View File

@ -127,8 +127,10 @@ class ObjectPool:
obj = self._type2objs[typ][i] obj = self._type2objs[typ][i]
s += '\nOBJ: %s\n' % safeRepr(obj) s += '\nOBJ: %s\n' % safeRepr(obj)
referrers = gc.get_referrers(obj) referrers = gc.get_referrers(obj)
s += '%s REFERRERS:\n' % len(referrers)
if len(referrers): if len(referrers):
s += getNumberedTypedString(referrers, maxLen=80) s += getNumberedTypedString(referrers, maxLen=80,
numPrefix='REF')
else: else:
s += '<No Referrers>' s += '<No Referrers>'
return s return s

View File

@ -2039,9 +2039,9 @@ def fastRepr(obj, maxLen=200, strFactor=10, _visitedIds=None):
elif type(obj) is types.StringType: elif type(obj) is types.StringType:
maxLen *= strFactor maxLen *= strFactor
if len(obj) > maxLen: if len(obj) > maxLen:
return obj[:maxLen] return repr(obj[:maxLen])
else: else:
return obj return repr(obj)
else: else:
return safeRepr(obj) return safeRepr(obj)
@ -2194,7 +2194,7 @@ def itype(obj):
else: else:
return t return t
def getNumberedTypedString(items, maxLen=5000): def getNumberedTypedString(items, maxLen=5000, numPrefix=''):
"""get a string that has each item of the list on its own line, """get a string that has each item of the list on its own line,
and each item is numbered on the left from zero""" and each item is numbered on the left from zero"""
digits = 0 digits = 0
@ -2203,7 +2203,7 @@ def getNumberedTypedString(items, maxLen=5000):
digits += 1 digits += 1
n /= 10 n /= 10
digits = digits digits = digits
format = '%0' + '%s' % digits + 'i:%s \t%s' format = numPrefix + '%0' + '%s' % digits + 'i:%s \t%s'
first = True first = True
s = '' s = ''
for i in xrange(len(items)): for i in xrange(len(items)):