enumeration implementation
authorTony Mack <tmack@paris.CS.Princeton.EDU>
Wed, 31 Aug 2011 20:08:59 +0000 (16:08 -0400)
committerTony Mack <tmack@paris.CS.Princeton.EDU>
Wed, 31 Aug 2011 20:08:59 +0000 (16:08 -0400)
sfa/util/enumeration.py [new file with mode: 0644]

diff --git a/sfa/util/enumeration.py b/sfa/util/enumeration.py
new file mode 100644 (file)
index 0000000..4e508bd
--- /dev/null
@@ -0,0 +1,13 @@
+
+class Enum(set):
+    def __init__(self, *args, **kwds):
+        set.__init__(self)
+        enums = dict(zip(args, [object() for i in range(len(args))]), **kwds)
+        for (key, value) in enums.items():
+            setattr(self, key, value)
+            self.add(eval('self.%s' % key))
+
+
+#def Enum2(*args, **kwds):
+#    enums = dict(zip(sequential, range(len(sequential))), **named)
+#    return type('Enum', (), enums)