[Python-checkins] r67404 - in sandbox/trunk/2to3/lib2to3/fixes: fix_imports.py fix_imports2.py fix_urllib.py
benjamin.peterson
python-checkins at python.org
Wed Nov 26 20:29:50 CET 2008
Author: benjamin.peterson
Date: Wed Nov 26 20:29:49 2008
New Revision: 67404
Log:
build the fix_imports pattern in compile_pattern, so MAPPING can be changed and reflected in the pattern
Modified:
sandbox/trunk/2to3/lib2to3/fixes/fix_imports.py
sandbox/trunk/2to3/lib2to3/fixes/fix_imports2.py
sandbox/trunk/2to3/lib2to3/fixes/fix_urllib.py
Modified: sandbox/trunk/2to3/lib2to3/fixes/fix_imports.py
==============================================================================
--- sandbox/trunk/2to3/lib2to3/fixes/fix_imports.py (original)
+++ sandbox/trunk/2to3/lib2to3/fixes/fix_imports.py Wed Nov 26 20:29:49 2008
@@ -84,12 +84,20 @@
class FixImports(fixer_base.BaseFix):
- PATTERN = "|".join(build_pattern())
order = "pre" # Pre-order tree traversal
# This is overridden in fix_imports2.
mapping = MAPPING
+ def build_pattern(self):
+ return "|".join(build_pattern(self.mapping))
+
+ def compile_pattern(self):
+ # We override this, so MAPPING can be pragmatically altered and the
+ # changes will be reflected in PATTERN.
+ self.PATTERN = self.build_pattern()
+ super(FixImports, self).compile_pattern()
+
# Don't match the node if it's within another match.
def match(self, node):
match = super(FixImports, self).match
Modified: sandbox/trunk/2to3/lib2to3/fixes/fix_imports2.py
==============================================================================
--- sandbox/trunk/2to3/lib2to3/fixes/fix_imports2.py (original)
+++ sandbox/trunk/2to3/lib2to3/fixes/fix_imports2.py Wed Nov 26 20:29:49 2008
@@ -10,7 +10,6 @@
class FixImports2(fix_imports.FixImports):
- PATTERN = "|".join((fix_imports.build_pattern(MAPPING)))
order = "post"
Modified: sandbox/trunk/2to3/lib2to3/fixes/fix_urllib.py
==============================================================================
--- sandbox/trunk/2to3/lib2to3/fixes/fix_urllib.py (original)
+++ sandbox/trunk/2to3/lib2to3/fixes/fix_urllib.py Wed Nov 26 20:29:49 2008
@@ -65,7 +65,9 @@
class FixUrllib(FixImports):
- PATTERN = "|".join(build_pattern())
+
+ def build_pattern(self):
+ return "|".join(build_pattern())
def transform_import(self, node, results):
"""Transform for the basic import case. Replaces the old
More information about the Python-checkins
mailing list