def __repr__(self):
     # Lots of Panda classes have an output function defined that takes an Ostream
     # We create a LineStream for the output function to write to, then we extract
     # the string out of it and return it as our str
     try:
         from pandac import LineStream
         lineStream = LineStream.LineStream()
         self.output(lineStream)
         baseRepr = lineStream.getLine()
     except AssertionError, e:
         raise AssertionError, e
 def __str__(self):
     # This is a more complete version of printing which shows the object type
     # and pointer, plus the output from write() or output() whichever is defined
     # Print this info for all objects
     baseRepr = ('[' + self.__class__.__name__ + ' at: ' + repr(self.this) + ']')
     # Lots of Panda classes have an write or output function defined that takes an Ostream
     # We create a LineStream for the write or output function to write to, then we extract
     # the string out of it and return it as our repr
     from pandac import LineStream
     lineStream = LineStream.LineStream()
     try:
         # First try the write function, that is the better one
         self.write(lineStream)
         while lineStream.isTextAvailable():
             baseRepr = baseRepr + '\n' + lineStream.getLine()
     except AssertionError, e:
         raise AssertionError, e