#NEWLINE# def __get__( self , inst , cls ) : #NEWLINE# #INDENT# "Get an object specification for an object\n\n        For example:\n\n          >>> from zope.interface import Interface\n          >>> class IFoo(Interface): pass\n          ...\n          >>> class IFooFactory(Interface): pass\n          ...\n          >>> class C(object):\n          ...   implements(IFoo)\n          ...   classProvides(IFooFactory)\n          >>> [i.getName() for i in C.__providedBy__]\n          ['IFooFactory']\n          >>> [i.getName() for i in C().__providedBy__]\n          ['IFoo']\n\n        " #NEWLINE# if ( inst is None ) : #NEWLINE# #INDENT# return getObjectSpecification ( cls ) #NEWLINE# #UNINDENT# provides = getattr ( inst , '__provides__' , None ) #NEWLINE# if ( provides is not None ) : #NEWLINE# #INDENT# return provides #NEWLINE# #UNINDENT# return implementedBy ( cls )