@classmethod
def hasattr(cls, obj, name):
    """
		Return whether the object :obj`obj`  has an attribute ``name`` and
		honor  ``ul4hasattr`` and ``ul4attrs``.
		"""
    ul4hasattr = getattr(obj, 'ul4hasattr', None)
    if ul4hasattr is not None:
        return ul4hasattr(name)
    else:
        ul4attrs = getattr(obj, 'ul4attrs', None)
        if ul4attrs is not None:
            return name in ul4attrs
        else:
            return (name in cls.plainattrs or name in cls.wrappeddataattrs or
                name in cls.wrappedmethattrs)
