summaryrefslogtreecommitdiff
path: root/yocto-poky/meta/lib/oe/classutils.py
diff options
context:
space:
mode:
Diffstat (limited to 'yocto-poky/meta/lib/oe/classutils.py')
-rw-r--r--yocto-poky/meta/lib/oe/classutils.py43
1 files changed, 0 insertions, 43 deletions
diff --git a/yocto-poky/meta/lib/oe/classutils.py b/yocto-poky/meta/lib/oe/classutils.py
deleted file mode 100644
index 58188fdd6..000000000
--- a/yocto-poky/meta/lib/oe/classutils.py
+++ /dev/null
@@ -1,43 +0,0 @@
-class ClassRegistry(type):
- """Maintain a registry of classes, indexed by name.
-
-Note that this implementation requires that the names be unique, as it uses
-a dictionary to hold the classes by name.
-
-The name in the registry can be overridden via the 'name' attribute of the
-class, and the 'priority' attribute controls priority. The prioritized()
-method returns the registered classes in priority order.
-
-Subclasses of ClassRegistry may define an 'implemented' property to exert
-control over whether the class will be added to the registry (e.g. to keep
-abstract base classes out of the registry)."""
- priority = 0
- class __metaclass__(type):
- """Give each ClassRegistry their own registry"""
- def __init__(cls, name, bases, attrs):
- cls.registry = {}
- type.__init__(cls, name, bases, attrs)
-
- def __init__(cls, name, bases, attrs):
- super(ClassRegistry, cls).__init__(name, bases, attrs)
- try:
- if not cls.implemented:
- return
- except AttributeError:
- pass
-
- try:
- cls.name
- except AttributeError:
- cls.name = name
- cls.registry[cls.name] = cls
-
- @classmethod
- def prioritized(tcls):
- return sorted(tcls.registry.values(),
- key=lambda v: v.priority, reverse=True)
-
- def unregister(cls):
- for key in cls.registry.keys():
- if cls.registry[key] is cls:
- del cls.registry[key]