Current Path : /usr/lib/python2.7/dist-packages/zope/interface/tests/ |
Current File : //usr/lib/python2.7/dist-packages/zope/interface/tests/odd.pyc |
ó ÔËÞKc @ s‰ d Z d e f d „ ƒ YZ d e f d „ ƒ YZ d e f d „ ƒ YZ e d k r… d d l Z d d l Z e j e d d „ ƒn d S( sœ Odd meta class that doesn't subclass type. This is used for testing support for ExtensionClass in new interfaces. >>> class A(object): ... __metaclass__ = MetaClass ... a = 1 ... >>> A.__name__ 'A' >>> A.__bases__ == (object,) True >>> class B(object): ... __metaclass__ = MetaClass ... b = 1 ... >>> class C(A, B): pass ... >>> C.__name__ 'C' >>> int(C.__bases__ == (A, B)) 1 >>> a = A() >>> aa = A() >>> a.a 1 >>> aa.a 1 >>> aa.a = 2 >>> a.a 1 >>> aa.a 2 >>> c = C() >>> c.a 1 >>> c.b 1 >>> c.b = 2 >>> c.b 2 >>> C.c = 1 >>> c.c 1 >>> import sys >>> if sys.version[0] == '2': # This test only makes sense under Python 2.x ... from types import ClassType ... assert not isinstance(C, (type, ClassType)) >>> int(C.__class__.__class__ is C.__class__) 1 $Id: odd.py 110699 2010-04-09 08:16:17Z regebro $ t MetaMetaClassc B s e Z d „ Z RS( c C s | d k r | St j | | ƒ S( Nt __class__( t typet __getattribute__( t selft name( ( s<