[Python-checkins] r56370 - in sandbox/trunk/2to3: fixes/fix_apply.py fixes/fix_callable.py fixes/fix_dict.py fixes/fix_dummy.py fixes/fix_except.py fixes/fix_exec.py fixes/fix_filter.py fixes/fix_has_key.py fixes/fix_input.py fixes/fix_intern.py fixes/fix_long.py fixes/fix_map.py fixes/fix_ne.py fixes/fix_next.py fixes/fix_nonzero.py fixes/fix_numliterals.py fixes/fix_print.py fixes/fix_raise.py fixes/fix_raw_input.py fixes/fix_repr.py fixes/fix_sysexcattrs.py fixes/fix_throw.py fixes/fix_tuple_params.py fixes/fix_unicode.py fixes/fix_xrange.py refactor.py

collin.winter python-checkins at python.org
Sat Jul 14 20:22:44 CEST 2007


Author: collin.winter
Date: Sat Jul 14 20:22:43 2007
New Revision: 56370

Modified:
   sandbox/trunk/2to3/   (props changed)
   sandbox/trunk/2to3/fixes/fix_apply.py
   sandbox/trunk/2to3/fixes/fix_callable.py
   sandbox/trunk/2to3/fixes/fix_dict.py
   sandbox/trunk/2to3/fixes/fix_dummy.py
   sandbox/trunk/2to3/fixes/fix_except.py
   sandbox/trunk/2to3/fixes/fix_exec.py
   sandbox/trunk/2to3/fixes/fix_filter.py
   sandbox/trunk/2to3/fixes/fix_has_key.py
   sandbox/trunk/2to3/fixes/fix_input.py
   sandbox/trunk/2to3/fixes/fix_intern.py
   sandbox/trunk/2to3/fixes/fix_long.py
   sandbox/trunk/2to3/fixes/fix_map.py
   sandbox/trunk/2to3/fixes/fix_ne.py
   sandbox/trunk/2to3/fixes/fix_next.py
   sandbox/trunk/2to3/fixes/fix_nonzero.py
   sandbox/trunk/2to3/fixes/fix_numliterals.py
   sandbox/trunk/2to3/fixes/fix_print.py
   sandbox/trunk/2to3/fixes/fix_raise.py
   sandbox/trunk/2to3/fixes/fix_raw_input.py
   sandbox/trunk/2to3/fixes/fix_repr.py
   sandbox/trunk/2to3/fixes/fix_sysexcattrs.py
   sandbox/trunk/2to3/fixes/fix_throw.py
   sandbox/trunk/2to3/fixes/fix_tuple_params.py
   sandbox/trunk/2to3/fixes/fix_unicode.py
   sandbox/trunk/2to3/fixes/fix_xrange.py
   sandbox/trunk/2to3/refactor.py
Log:
Pass the results dict from the fixer's match() method to transform() via refactor.py; this saves having to do the match twice.


Modified: sandbox/trunk/2to3/fixes/fix_apply.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_apply.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_apply.py	Sat Jul 14 20:22:43 2007
@@ -27,9 +27,8 @@
     >
     """
 
-    def transform(self, node):
+    def transform(self, node, results):
         syms = self.syms
-        results = self.match(node)
         assert results
         func = results["func"]
         args = results["args"]

Modified: sandbox/trunk/2to3/fixes/fix_callable.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_callable.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_callable.py	Sat Jul 14 20:22:43 2007
@@ -24,8 +24,7 @@
     >
     """
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         func = results["func"]
 
         args = [func.clone(), String(', '), String("'__call__'")]

Modified: sandbox/trunk/2to3/fixes/fix_dict.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_dict.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_dict.py	Sat Jul 14 20:22:43 2007
@@ -39,8 +39,7 @@
     >
     """
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         head = results["head"]
         method = results["method"][0] # Extract node for method name
         tail = results["tail"]

Modified: sandbox/trunk/2to3/fixes/fix_dummy.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_dummy.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_dummy.py	Sat Jul 14 20:22:43 2007
@@ -12,5 +12,5 @@
     def match(self, node):
         return True
 
-    def transform(self, node):
+    def transform(self, node, results):
         node.changed()

Modified: sandbox/trunk/2to3/fixes/fix_except.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_except.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_except.py	Sat Jul 14 20:22:43 2007
@@ -42,10 +42,9 @@
 	                       | 'finally' ':' suite) >
     """
 
-    def transform(self, node):
-        syms = self.syms
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
+        syms = self.syms
 
         try_cleanup = [ch.clone() for ch in results['cleanup']]
         for except_clause, e_suite in find_excepts(try_cleanup):

Modified: sandbox/trunk/2to3/fixes/fix_exec.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_exec.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_exec.py	Sat Jul 14 20:22:43 2007
@@ -23,10 +23,9 @@
     exec_stmt< 'exec' (not atom<'(' [any] ')'>) a=any >
     """
 
-    def transform(self, node):
-        syms = self.syms
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
+        syms = self.syms
         a = results["a"]
         b = results.get("b")
         c = results.get("c")

Modified: sandbox/trunk/2to3/fixes/fix_filter.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_filter.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_filter.py	Sat Jul 14 20:22:43 2007
@@ -42,8 +42,7 @@
     >
     """
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         if "filter_lambda" in results:
             new = ListComp(results.get("fp").clone(),
                            results.get("fp").clone(),

Modified: sandbox/trunk/2to3/fixes/fix_has_key.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_has_key.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_has_key.py	Sat Jul 14 20:22:43 2007
@@ -68,10 +68,9 @@
     >
     """
 
-    def transform(self, node):
-        syms = self.syms
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
+        syms = self.syms
         if (node.parent.type == syms.not_test and
             self.pattern.match(node.parent)):
             # Don't transform a node matching the first alternative of the

Modified: sandbox/trunk/2to3/fixes/fix_input.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_input.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_input.py	Sat Jul 14 20:22:43 2007
@@ -14,7 +14,7 @@
     >
     """
 
-    def transform(self, node):
+    def transform(self, node, results):
         new = node.clone()
         new.set_prefix("")
         new = Call(Name("eval"), [new])

Modified: sandbox/trunk/2to3/fixes/fix_intern.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_intern.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_intern.py	Sat Jul 14 20:22:43 2007
@@ -23,10 +23,9 @@
     >
     """
 
-    def transform(self, node):
-        syms = self.syms
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
+        syms = self.syms
         obj = results["obj"].clone()
         if obj.type == syms.arglist:
             newarglist = obj.clone()

Modified: sandbox/trunk/2to3/fixes/fix_long.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_long.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_long.py	Sat Jul 14 20:22:43 2007
@@ -21,8 +21,7 @@
     static_long = Name("long")
     static_int = Name("int")
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         long_type = results.get("long_type")
         number = results.get("number")
         new = None

Modified: sandbox/trunk/2to3/fixes/fix_map.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_map.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_map.py	Sat Jul 14 20:22:43 2007
@@ -52,8 +52,7 @@
     >
     """
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         if "map_lambda" in results:
             new = ListComp(results.get("xp").clone(),
                            results.get("fp").clone(),

Modified: sandbox/trunk/2to3/fixes/fix_ne.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_ne.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_ne.py	Sat Jul 14 20:22:43 2007
@@ -16,7 +16,7 @@
         # Override
         return node.type == token.NOTEQUAL and node.value == "<>"
 
-    def transform(self, node):
+    def transform(self, node, results):
       new = pytree.Leaf(token.NOTEQUAL, "!=")
       new.set_prefix(node.get_prefix())
       return new

Modified: sandbox/trunk/2to3/fixes/fix_next.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_next.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_next.py	Sat Jul 14 20:22:43 2007
@@ -73,8 +73,7 @@
         self.shadowed_next = False
         self.delayed = []
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
 
         base = results.get("base")

Modified: sandbox/trunk/2to3/fixes/fix_nonzero.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_nonzero.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_nonzero.py	Sat Jul 14 20:22:43 2007
@@ -13,9 +13,8 @@
                               parameters< '(' NAME ')' > any+ >
                      any* > >
     """
-    
-    def transform(self, node):
-        results = self.match(node)
+
+    def transform(self, node, results):
         assert results
 
         name = results["name"]

Modified: sandbox/trunk/2to3/fixes/fix_numliterals.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_numliterals.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_numliterals.py	Sat Jul 14 20:22:43 2007
@@ -17,7 +17,7 @@
         return (node.type == token.NUMBER and
                 (node.value.startswith("0") or node.value[-1] in "Ll"))
 
-    def transform(self, node):
+    def transform(self, node, results):
         val = node.value
         if val[-1] in 'Ll':
             val = val[:-1]

Modified: sandbox/trunk/2to3/fixes/fix_print.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_print.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_print.py	Sat Jul 14 20:22:43 2007
@@ -30,10 +30,9 @@
             return None
         return self.pattern.match(node)
 
-    def transform(self, node):
-        syms = self.syms
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
+        syms = self.syms
 
         if node == Name("print"):
             # Special-case print all by itself

Modified: sandbox/trunk/2to3/fixes/fix_raise.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_raise.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_raise.py	Sat Jul 14 20:22:43 2007
@@ -33,10 +33,9 @@
     raise_stmt< 'raise' exc=any [',' val=any [',' tb=any]] >
     """
 
-    def transform(self, node):
-        syms = self.syms
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
+        syms = self.syms
 
         exc = results["exc"].clone()
         if exc.type is token.STRING:

Modified: sandbox/trunk/2to3/fixes/fix_raw_input.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_raw_input.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_raw_input.py	Sat Jul 14 20:22:43 2007
@@ -12,8 +12,7 @@
               power< 'raw_input' args=trailer< '(' [any] ')' > >
               """
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         args = results["args"]
 
         new = pytree.Node(self.syms.power, [Name("input"), args.clone()])

Modified: sandbox/trunk/2to3/fixes/fix_repr.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_repr.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_repr.py	Sat Jul 14 20:22:43 2007
@@ -14,9 +14,7 @@
               atom < '`' expr=any '`' >
               """
 
-    def transform(self, node):
-      results = self.match(node)
-      assert results
+    def transform(self, node, results):
       expr = results["expr"].clone()
 
       if expr.type == self.syms.testlist1:

Modified: sandbox/trunk/2to3/fixes/fix_sysexcattrs.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_sysexcattrs.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_sysexcattrs.py	Sat Jul 14 20:22:43 2007
@@ -14,5 +14,5 @@
            any* >
     """
 
-    def transform(self, node):
+    def transform(self, node, results):
         self.cannot_convert(node, "This attribute is going away in Python 3")

Modified: sandbox/trunk/2to3/fixes/fix_throw.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_throw.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_throw.py	Sat Jul 14 20:22:43 2007
@@ -23,10 +23,8 @@
     power< any trailer< '.' 'throw' > trailer< '(' exc=any ')' > >
     """
 
-    def transform(self, node):
+    def transform(self, node, results):
         syms = self.syms
-        results = self.match(node)
-        assert results
 
         exc = results["exc"].clone()
         if exc.type is token.STRING:

Modified: sandbox/trunk/2to3/fixes/fix_tuple_params.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_tuple_params.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_tuple_params.py	Sat Jul 14 20:22:43 2007
@@ -32,8 +32,7 @@
               |
               lambda=lambdef< 'lambda' args=vfpdef< any+ > ':' body=any >"""
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         assert results
         
         if "lambda" in results:

Modified: sandbox/trunk/2to3/fixes/fix_unicode.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_unicode.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_unicode.py	Sat Jul 14 20:22:43 2007
@@ -11,7 +11,7 @@
 
   PATTERN = "STRING | NAME<'unicode' | 'unichr'>"
 
-  def transform(self, node):
+  def transform(self, node, results):
     if node.type == token.NAME:
       if node.value == "unicode":
         new = node.clone()

Modified: sandbox/trunk/2to3/fixes/fix_xrange.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_xrange.py	(original)
+++ sandbox/trunk/2to3/fixes/fix_xrange.py	Sat Jul 14 20:22:43 2007
@@ -18,8 +18,7 @@
     >
     """
 
-    def transform(self, node):
-        results = self.match(node)
+    def transform(self, node, results):
         args = results["args"]
         new = pytree.Node(self.syms.power,
                           [Name("range"), args.clone()])

Modified: sandbox/trunk/2to3/refactor.py
==============================================================================
--- sandbox/trunk/2to3/refactor.py	(original)
+++ sandbox/trunk/2to3/refactor.py	Sat Jul 14 20:22:43 2007
@@ -254,8 +254,9 @@
         changes = 0
         for node in tree.post_order():
             for fixer in self.fixers:
-                if fixer.match(node):
-                    new = fixer.transform(node)
+                results = fixer.match(node)
+                if results:
+                    new = fixer.transform(node, results)
                     if new is not None and (new != node or
                                             str(new) != str(node)):
                         node.replace(new)


More information about the Python-checkins mailing list