Home | History | Annotate | Download | only in python2.7

Lines Matching refs:cls

87         cls = super(ABCMeta, mcls).__new__(mcls, name, bases, namespace)
94 value = getattr(cls, name, None)
97 cls.__abstractmethods__ = frozenset(abstracts)
99 cls._abc_registry = WeakSet()
100 cls._abc_cache = WeakSet()
101 cls._abc_negative_cache = WeakSet()
102 cls._abc_negative_cache_version = ABCMeta._abc_invalidation_counter
103 return cls
105 def register(cls, subclass):
109 if issubclass(subclass, cls):
113 if issubclass(cls, subclass):
116 cls._abc_registry.add(subclass)
119 def _dump_registry(cls, file=None):
121 print >> file, "Class: %s.%s" % (cls.__module__, cls.__name__)
123 for name in sorted(cls.__dict__.keys()):
125 value = getattr(cls, name)
128 def __instancecheck__(cls, instance):
129 """Override for isinstance(instance, cls)."""
132 if subclass is not None and subclass in cls._abc_cache:
139 if (cls._abc_negative_cache_version ==
141 subtype in cls._abc_negative_cache):
144 return cls.__subclasscheck__(subtype)
145 return (cls.__subclasscheck__(subclass) or
146 cls.__subclasscheck__(subtype))
148 def __subclasscheck__(cls, subclass):
149 """Override for issubclass(subclass, cls)."""
151 if subclass in cls._abc_cache:
154 if cls._abc_negative_cache_version < ABCMeta._abc_invalidation_counter:
156 cls._abc_negative_cache = WeakSet()
157 cls._abc_negative_cache_version = ABCMeta._abc_invalidation_counter
158 elif subclass in cls._abc_negative_cache:
161 ok = cls.__subclasshook__(subclass)
165 cls._abc_cache.add(subclass)
167 cls._abc_negative_cache.add(subclass)
170 if cls in getattr(subclass, '__mro__', ()):
171 cls._abc_cache.add(subclass)
174 for rcls in cls._abc_registry:
176 cls._abc_cache.add(subclass)
179 for scls in cls.__subclasses__():
181 cls._abc_cache.add(subclass)
184 cls._abc_negative_cache.add(subclass)