'Renders a single object - i.e. a table cell.'

def _RenderObject(self, obj):

    if (not hasattr(obj, 'iteritems')):
        if (isinstance(obj, list) and (len(obj) == 2) and (obj[0] in ['*', '+'])):
            return utils.SmartStr(obj[1])
        return utils.SmartStr(obj)
    if ('string_value' in obj):
        return obj['string_value']
    if ('mro' in obj):
        obj_mro = obj['mro']
        if isinstance(obj_mro, basestring):
            obj_mro = obj_mro.split(':')
        for mro_type in obj_mro:
            if (mro_type in self.OBJECT_RENDERERS):
                return self.OBJECT_RENDERERS[mro_type](obj)
    return utils.SmartStr(obj)
