/usr/lib/python2.6/compiler
NameSizeModeActions
ast.py358320644editdlrm
ast.pyc685170644editdlrm
ast.pyo685170644editdlrm
consts.py4360644editdlrm
consts.pyc6900644editdlrm
consts.pyo6900644editdlrm
future.py18930644editdlrm
future.pyc29580644editdlrm
future.pyo29580644editdlrm
misc.py17940644editdlrm
misc.pyc37170644editdlrm
misc.pyo37170644editdlrm
pyassem.py261530644editdlrm
pyassem.pyc277820644editdlrm
pyassem.pyo273230644editdlrm
pycodegen.py471010644editdlrm
pycodegen.pyc554240644editdlrm
pycodegen.pyo549490644editdlrm
symbols.py144270644editdlrm
symbols.pyc177210644editdlrm
symbols.pyo176850644editdlrm
syntax.py14440644editdlrm
syntax.pyc18720644editdlrm
syntax.pyo18720644editdlrm
transformer.py516180644editdlrm
transformer.pyc470850644editdlrm
transformer.pyo453250644editdlrm
visitor.py38960644editdlrm
visitor.pyc41950644editdlrm
visitor.pyo41950644editdlrm
__init__.py9990644editdlrm
__init__.pyc12770644editdlrm
__init__.pyo12770644editdlrm
Edit: /usr/lib/python2.6/compiler/misc.py (1794B)
def flatten(tup): elts = [] for elt in tup: if isinstance(elt, tuple): elts = elts + flatten(elt) else: elts.append(elt) return elts class Set: def __init__(self): self.elts = {} def __len__(self): return len(self.elts) def __contains__(self, elt): return elt in self.elts def add(self, elt): self.elts[elt] = elt def elements(self): return self.elts.keys() def has_elt(self, elt): return elt in self.elts def remove(self, elt): del self.elts[elt] def copy(self): c = Set() c.elts.update(self.elts) return c class Stack: def __init__(self): self.stack = [] self.pop = self.stack.pop def __len__(self): return len(self.stack) def push(self, elt): self.stack.append(elt) def top(self): return self.stack[-1] def __getitem__(self, index): # needed by visitContinue() return self.stack[index] MANGLE_LEN = 256 # magic constant from compile.c def mangle(name, klass): if not name.startswith('__'): return name if len(name) + 2 >= MANGLE_LEN: return name if name.endswith('__'): return name try: i = 0 while klass[i] == '_': i = i + 1 except IndexError: return name klass = klass[i:] tlen = len(klass) + len(name) if tlen > MANGLE_LEN: klass = klass[:MANGLE_LEN-tlen] return "_%s%s" % (klass, name) def set_filename(filename, tree): """Set the filename attribute to filename on every node in tree""" worklist = [tree] while worklist: node = worklist.pop(0) node.filename = filename worklist.extend(node.getChildNodes())