abc :: ABCMeta :: Class ABCMeta
[hide private]
[frames] | no frames]

Type ABCMeta

object --+    
         |    
      type --+
             |
            ABCMeta

Metaclass for defining Abstract Base Classes (ABCs).

Use this metaclass to create an ABC. An ABC can be subclassed directly, and then acts as a mix-in class. You can also register unrelated concrete classes (even built-in classes) and unrelated ABCs as 'virtual subclasses' -- these and their descendants will be considered subclasses of the registering ABC by the built-in issubclass() function, but the registering ABC won't show up in their MRO (Method Resolution Order) nor will method implementations defined by the registering ABC be callable (not even via super()).

Instance Methods [hide private]
bool
__instancecheck__(cls, instance)
Override for isinstance(instance, cls).
bool
__subclasscheck__(cls, subclass)
Override for issubclass(subclass, cls).
 
_dump_registry(cls, file=None)
Debug helper to print the ABC registry.
 
register(cls, subclass)
Register a virtual subclass of an ABC.

Inherited from type: __call__, __delattr__, __eq__, __ge__, __getattribute__, __gt__, __hash__, __init__, __le__, __lt__, __ne__, __repr__, __setattr__, __subclasses__, mro

Inherited from object: __format__, __reduce__, __reduce_ex__, __sizeof__, __str__, __subclasshook__

Static Methods [hide private]
a new object with type S, a subtype of T
__new__(mcls, name, bases, namespace)
Class Variables [hide private]
  _abc_invalidation_counter = 10
Properties [hide private]

Inherited from type: __abstractmethods__, __base__, __bases__, __basicsize__, __dictoffset__, __flags__, __itemsize__, __mro__, __name__, __weakrefoffset__

Inherited from object: __class__

Method Details [hide private]

__instancecheck__(cls, instance)

 

Override for isinstance(instance, cls).

Returns: bool
Overrides: type.__instancecheck__

__new__(mcls, name, bases, namespace)
Static Method

 
Returns: a new object with type S, a subtype of T
Overrides: object.__new__
(inherited documentation)

__subclasscheck__(cls, subclass)

 

Override for issubclass(subclass, cls).

Returns: bool
Overrides: type.__subclasscheck__