Author: Armin Rigo <ar...@tunes.org> Branch: Changeset: r51771:7b1eec04c0f9 Date: 2012-01-26 09:52 +0100 http://bitbucket.org/pypy/pypy/changeset/7b1eec04c0f9/
Log: Add some reprs to Symbolic subclasses, and show them in the error messages. diff --git a/pypy/rlib/objectmodel.py b/pypy/rlib/objectmodel.py --- a/pypy/rlib/objectmodel.py +++ b/pypy/rlib/objectmodel.py @@ -130,19 +130,23 @@ if self is other: return 0 else: - raise TypeError("Symbolics can not be compared!") + raise TypeError("Symbolics can not be compared! (%r, %r)" + % (self, other)) def __hash__(self): - raise TypeError("Symbolics are not hashable!") + raise TypeError("Symbolics are not hashable! %r" % (self,)) def __nonzero__(self): - raise TypeError("Symbolics are not comparable") + raise TypeError("Symbolics are not comparable! %r" % (self,)) class ComputedIntSymbolic(Symbolic): def __init__(self, compute_fn): self.compute_fn = compute_fn + def __repr__(self): + return '%s(%r)' % (self.__class__.__name__, self.compute_fn) + def annotation(self): from pypy.annotation import model return model.SomeInteger() @@ -157,6 +161,9 @@ self.expr = expr self.default = default + def __repr__(self): + return '%s(%r)' % (self.__class__.__name__, self.expr) + def annotation(self): from pypy.annotation import model return model.SomeInteger() diff --git a/pypy/rpython/lltypesystem/llgroup.py b/pypy/rpython/lltypesystem/llgroup.py --- a/pypy/rpython/lltypesystem/llgroup.py +++ b/pypy/rpython/lltypesystem/llgroup.py @@ -76,6 +76,10 @@ self.index = memberindex self.member = grp.members[memberindex]._as_ptr() + def __repr__(self): + return '%s(%s, %s)' % (self.__class__.__name__, + self.grpptr, self.index) + def __nonzero__(self): return True diff --git a/pypy/rpython/lltypesystem/rffi.py b/pypy/rpython/lltypesystem/rffi.py --- a/pypy/rpython/lltypesystem/rffi.py +++ b/pypy/rpython/lltypesystem/rffi.py @@ -27,6 +27,10 @@ self.c_name = c_name self.TP = TP + def __repr__(self): + return '%s(%r, %s)' % (self.__class__.__name__, + self.c_name, self.TP) + def annotation(self): return lltype_to_annotation(self.TP) _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit