code: def process(self, object, h, n=0, nl=False):
          
          if object is None:
              return 'None'
          if isinstance(object, Object):
              if len(object) == 0:
                  return '<empty>'
              else:
                  return self.print_object(object, h, n+2, nl)
          if isinstance(object, dict):
              if len(object) == 0:
                  return '<empty>'
              else:
                  return self.print_dictionary(object, h, n+2, nl)
          if isinstance(object, (list, tuple)):
              if len(object) == 0:
                  return '<empty>'
              else:
                  return self.print_collection(object, h, n+2)
          if isinstance(object, basestring):
              return '"%s"' % tostr(object)
          return '%s' % tostr(object)
docs: print object using the specified indent (n) and newline (nl).