mirror of
https://github.com/python/cpython.git
synced 2025-11-25 12:44:13 +00:00
Import lib2to3.
This commit is contained in:
parent
a4d77898db
commit
5e37baea80
68 changed files with 11993 additions and 0 deletions
26
Lib/lib2to3/fixes/fix_input.py
Normal file
26
Lib/lib2to3/fixes/fix_input.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
"""Fixer that changes input(...) into eval(input(...))."""
|
||||
# Author: Andre Roberge
|
||||
|
||||
# Local imports
|
||||
from . import basefix
|
||||
from .util import Call, Name
|
||||
from .. import patcomp
|
||||
|
||||
|
||||
context = patcomp.compile_pattern("power< 'eval' trailer< '(' any ')' > >")
|
||||
|
||||
|
||||
class FixInput(basefix.BaseFix):
|
||||
|
||||
PATTERN = """
|
||||
power< 'input' args=trailer< '(' [any] ')' > >
|
||||
"""
|
||||
|
||||
def transform(self, node, results):
|
||||
# If we're already wrapped in a eval() call, we're done.
|
||||
if context.match(node.parent.parent):
|
||||
return
|
||||
|
||||
new = node.clone()
|
||||
new.set_prefix("")
|
||||
return Call(Name("eval"), [new], prefix=node.get_prefix())
|
||||
Loading…
Add table
Add a link
Reference in a new issue