[pypy-svn] r72144 - pypy/trunk/pypy/interpreter

fijal at codespeak.net fijal at codespeak.net
Thu Mar 11 22:45:44 CET 2010


Author: fijal
Date: Thu Mar 11 22:45:42 2010
New Revision: 72144

Modified:
   pypy/trunk/pypy/interpreter/nestedscope.py
Log:
Remove getclosure, I don't think anyone is using it (grepping did not reveal)
Simplify handling of cellvars - now it's a non-resizable list


Modified: pypy/trunk/pypy/interpreter/nestedscope.py
==============================================================================
--- pypy/trunk/pypy/interpreter/nestedscope.py	(original)
+++ pypy/trunk/pypy/interpreter/nestedscope.py	Thu Mar 11 22:45:42 2010
@@ -101,16 +101,12 @@
         if len(closure) != nfreevars:
             raise ValueError("code object received a closure with "
                                  "an unexpected number of free variables")
-        self.cells = [Cell() for i in range(ncellvars)]
-        if closure:
-            self.cells += closure
-
-    def getclosure(self):
-        if self.cells is None:
-            return None
-        ncellvars = len(self.pycode.co_cellvars)  # not part of the closure
-        return self.cells[ncellvars:]
-
+        self.cells = [None] * (ncellvars + nfreevars)
+        for i in range(ncellvars):
+            self.cells[i] = Cell()
+        for i in range(nfreevars):
+            self.cells[i + ncellvars] = closure[i]
+    
     def _getcells(self):
         return self.cells
 



More information about the Pypy-commit mailing list