]> code.delx.au - bg-scripts/blobdiff - lib/Enum.py
Removing a lot of unused libraries
[bg-scripts] / lib / Enum.py
diff --git a/lib/Enum.py b/lib/Enum.py
deleted file mode 100644 (file)
index 6bb2d3d..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-#! python
-# Copyright 2007 Greg Darke <gdar9540@usyd.edu.au>
-# Licensed for distribution under the GPL version 2, check COPYING for details
-# An enum like interface
-
-"""
-An enum like interface
-"""
-
-__all__ = ('enum', )
-
-import itertools
-
-def enum(*args):
-       return EnumContainer(*args)
-
-class EnumElement(object):
-       __slots__ = ('enumName', 'enumContainer')
-       def __init__(self, enumName, enumContainer):
-               self.enumName = enumName
-               self.enumContainer = enumContainer
-       def __repr__(self):
-               return '%s(%s)' % (self.__class__.__name__, self.enumName)
-       def __str__(self):
-               return self.enumName
-       def __eq__(self, other):
-               if not isinstance(other, self.__class__): return NotImplemented
-               return other is self
-       def __hash__(self):
-               return hash(self.enumName) ^ hash(self.enumContainer)
-
-class EnumContainer(object):
-       def __init__(self, *enums):
-               self.enumList = tuple( EnumElement(enumName, self) for enumName in enums)
-               for enumName, enumElement in itertools.izip(enums, self.enumList):
-                       setattr(self, enumName, enumElement)
-
-       def __contains__(self, enum):
-               return enum in self.enumList
-
-       def __repr__(self):
-               return '%s(%s)' % (self.__class__.__name__, ', '.join(self.enumList))
-
-       def explode(self):
-               """Places contents of this enum into the callers global namespace"""
-               import inspect
-               frameObject, _, _, _, _ = inspect.stack[1] # The stackframe of who called us
-               global_dict = frameObject.f_globals
-               del frameObject
-               for enum in self.enumList:
-                       if str(enum) in global_dict:
-                               raise ValueError, '%s is already in your global dict' % enum
-               for enum in self.enumList:
-                       global_dict[str(enum)] = enum