Bump version to 0.9.1.
[python/dscho.git] / Lib / compiler / misc.py
blobe57acae78caed1306ae9a817fe9886b8d22cd77e
1 import types
3 def flatten(tup):
4 elts = []
5 for elt in tup:
6 if type(elt) == types.TupleType:
7 elts = elts + flatten(elt)
8 else:
9 elts.append(elt)
10 return elts
12 class Set:
13 def __init__(self):
14 self.elts = {}
15 def __len__(self):
16 return len(self.elts)
17 def add(self, elt):
18 self.elts[elt] = elt
19 def elements(self):
20 return self.elts.keys()
21 def has_elt(self, elt):
22 return self.elts.has_key(elt)
23 def remove(self, elt):
24 del self.elts[elt]
26 class Stack:
27 def __init__(self):
28 self.stack = []
29 self.pop = self.stack.pop
30 def __len__(self):
31 return len(self.stack)
32 def push(self, elt):
33 self.stack.append(elt)
34 def top(self):
35 return self.stack[-1]