You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
687 B
33 lines
687 B
3 years ago
|
"""
|
||
|
Fixer for input.
|
||
|
|
||
|
Does a check for `from builtins import input` before running the lib2to3 fixer.
|
||
|
The fixer will not run when the input is already present.
|
||
|
|
||
|
|
||
|
this:
|
||
|
a = input()
|
||
|
becomes:
|
||
|
from builtins import input
|
||
|
a = eval(input())
|
||
|
|
||
|
and this:
|
||
|
from builtins import input
|
||
|
a = input()
|
||
|
becomes (no change):
|
||
|
from builtins import input
|
||
|
a = input()
|
||
|
"""
|
||
|
|
||
|
import lib2to3.fixes.fix_input
|
||
|
from lib2to3.fixer_util import does_tree_import
|
||
|
|
||
|
|
||
|
class FixInput(lib2to3.fixes.fix_input.FixInput):
|
||
|
def transform(self, node, results):
|
||
|
|
||
|
if does_tree_import('builtins', 'input', node):
|
||
|
return
|
||
|
|
||
|
return super(FixInput, self).transform(node, results)
|