[Python-checkins] r56384 - in sandbox/trunk/2to3: fixes/fix_stringio.py tests/test_fixers.py
collin.winter
python-checkins at python.org
Sun Jul 15 00:33:12 CEST 2007
Author: collin.winter
Date: Sun Jul 15 00:33:11 2007
New Revision: 56384
Modified:
sandbox/trunk/2to3/ (props changed)
sandbox/trunk/2to3/fixes/fix_stringio.py
sandbox/trunk/2to3/tests/test_fixers.py
Log:
Add support for 'from StringIO import *' to StringIO fixer.
Modified: sandbox/trunk/2to3/fixes/fix_stringio.py
==============================================================================
--- sandbox/trunk/2to3/fixes/fix_stringio.py (original)
+++ sandbox/trunk/2to3/fixes/fix_stringio.py Sun Jul 15 00:33:11 2007
@@ -24,6 +24,8 @@
import_from< 'from' module_name='StringIO' 'import'
( 'StringIO' | import_as_name< 'StringIO' 'as' any >) >
|
+ import_from< 'from' module_name='StringIO' 'import' star='*' >
+ |
import_name< 'import' dotted_as_name< module_name='StringIO' 'as' any > >
|
power< module_name='StringIO' trailer< '.' 'StringIO' > any* >
@@ -51,11 +53,14 @@
import_mod = results.get("module")
module_name = results.get("module_name")
bare_name = results.get("bare_name")
+ star = results.get("star")
if import_mod:
self.module_import = True
import_mod.replace(Name("io", prefix=import_mod.get_prefix()))
elif module_name:
module_name.replace(Name("io", prefix=module_name.get_prefix()))
+ if star:
+ star.replace(Name("StringIO", prefix=star.get_prefix()))
elif bare_name and self.module_import:
bare_name.replace(Name("io", prefix=bare_name.get_prefix()))
Modified: sandbox/trunk/2to3/tests/test_fixers.py
==============================================================================
--- sandbox/trunk/2to3/tests/test_fixers.py (original)
+++ sandbox/trunk/2to3/tests/test_fixers.py Sun Jul 15 00:33:11 2007
@@ -1197,6 +1197,10 @@
a = "from io import StringIO"
self.check(b, a)
+ b = "from StringIO import *"
+ a = "from io import StringIO"
+ self.check(b, a)
+
s = "from foo import StringIO"
self.check(s, s)
More information about the Python-checkins
mailing list