[pypy-svn] r69524 - pypy/trunk/pypy/module/oracle

afa at codespeak.net afa at codespeak.net
Mon Nov 23 09:52:19 CET 2009


Author: afa
Date: Mon Nov 23 09:52:19 2009
New Revision: 69524

Modified:
   pypy/trunk/pypy/module/oracle/interp_cursor.py
   pypy/trunk/pypy/module/oracle/interp_variable.py
Log:
enumerate() is not RPython :-(


Modified: pypy/trunk/pypy/module/oracle/interp_cursor.py
==============================================================================
--- pypy/trunk/pypy/module/oracle/interp_cursor.py	(original)
+++ pypy/trunk/pypy/module/oracle/interp_cursor.py	Mon Nov 23 09:52:19 2009
@@ -135,7 +135,8 @@
         # perform binds
         args_w = space.listview(w_list_of_args)
         numrows = len(args_w)
-        for i, w_arguments in enumerate(args_w):
+        for i in range(numrows):
+            w_arguments = args_w[i]
             deferred = i < numrows - 1
             if space.is_true(space.isinstance(w_arguments, space.w_dict)):
                 self._setBindVariablesByName(
@@ -563,7 +564,9 @@
         if self.bindList is None:
             self.bindList = []
 
-        for i, w_value in enumerate(space.fixedview(w_vars)):
+        vars_w = space.fixedview(w_vars)
+        for i in range(len(vars_w)):
+            w_value = vars_w[i]
             if i < len(self.bindList):
                 origVar = self.bindList[i]
                 if space.is_w(origVar, space.w_None):
@@ -657,7 +660,8 @@
     def _performBind(self, space):
         # set values and perform binds for all bind variables
         if self.bindList:
-            for i, var in enumerate(self.bindList):
+            for i in range(len(self.bindList)):
+                var = self.bindList[i]
                 var.bind(space, self, None, i + 1)
         if self.bindDict:
             items_w = space.fixedview(
@@ -1018,7 +1022,8 @@
             return self.bindDict
         else:
             self.bindList = [None] * len(args_w)
-            for i, w_value in enumerate(args_w):
+            for i in range(len(args_w)):
+                w_value = args_w[i]
                 if space.is_w(w_value, space.w_None):
                     var = space.w_None
                 else:

Modified: pypy/trunk/pypy/module/oracle/interp_variable.py
==============================================================================
--- pypy/trunk/pypy/module/oracle/interp_variable.py	(original)
+++ pypy/trunk/pypy/module/oracle/interp_variable.py	Mon Nov 23 09:52:19 2009
@@ -377,8 +377,8 @@
 
         # set all of the values
         self.actualElementsPtr[0] = rffi.cast(lltype.Unsigned, len(elements_w))
-        for i, w_element in enumerate(elements_w):
-            self.setSingleValue(space, i, w_element)
+        for i in range(len(elements_w)):
+            self.setSingleValue(space, i, elements_w[i])
 
     def setValue(self, space, pos, w_value):
         if self.isArray:



More information about the Pypy-commit mailing list