Submit
Path:
~
/
/
opt
/
cloudlinux
/
venv
/
lib64
/
python3.11
/
site-packages
/
libfuturize
/
fixes
/
File Content:
fix_future_builtins.py
""" For the ``future`` package. Adds this import line:: from builtins import XYZ for each of the functions XYZ that is used in the module. Adds these imports after any other imports (in an initial block of them). """ from __future__ import unicode_literals from lib2to3 import fixer_base from lib2to3.pygram import python_symbols as syms from lib2to3.fixer_util import Name, Call, in_special_context from libfuturize.fixer_util import touch_import_top # All builtins are: # from future.builtins.iterators import (filter, map, zip) # from future.builtins.misc import (ascii, chr, hex, input, isinstance, oct, open, round, super) # from future.types import (bytes, dict, int, range, str) # We don't need isinstance any more. replaced_builtin_fns = '''filter map zip ascii chr hex input next oct bytes range str raw_input'''.split() # This includes raw_input as a workaround for the # lib2to3 fixer for raw_input on Py3 (only), allowing # the correct import to be included. (Py3 seems to run # the fixers the wrong way around, perhaps ignoring the # run_order class attribute below ...) expression = '|'.join(["name='{0}'".format(name) for name in replaced_builtin_fns]) class FixFutureBuiltins(fixer_base.BaseFix): BM_compatible = True run_order = 7 # Currently we only match uses as a function. This doesn't match e.g.: # if isinstance(s, str): # ... PATTERN = """ power< ({0}) trailer< '(' [arglist=any] ')' > rest=any* > | power< 'map' trailer< '(' [arglist=any] ')' > > """.format(expression) def transform(self, node, results): name = results["name"] touch_import_top(u'builtins', name.value, node) # name.replace(Name(u"input", prefix=name.prefix))
Submit
FILE
FOLDER
Name
Size
Permission
Action
__pycache__
---
0755
__init__.py
5236 bytes
0644
fix_UserDict.py
3840 bytes
0644
fix_absolute_import.py
3140 bytes
0644
fix_add__future__imports_except_unicode_literals.py
662 bytes
0644
fix_basestring.py
394 bytes
0644
fix_bytes.py
685 bytes
0644
fix_cmp.py
701 bytes
0644
fix_division.py
228 bytes
0644
fix_division_safe.py
3631 bytes
0644
fix_execfile.py
921 bytes
0644
fix_future_builtins.py
2027 bytes
0644
fix_future_standard_library.py
733 bytes
0644
fix_future_standard_library_urllib.py
1001 bytes
0644
fix_input.py
687 bytes
0644
fix_metaclass.py
9568 bytes
0644
fix_next_call.py
3158 bytes
0644
fix_object.py
407 bytes
0644
fix_oldstr_wrap.py
1214 bytes
0644
fix_order___future__imports.py
829 bytes
0644
fix_print.py
3881 bytes
0644
fix_print_with_import.py
735 bytes
0644
fix_raise.py
3904 bytes
0644
fix_remove_old__future__imports.py
851 bytes
0644
fix_unicode_keep_u.py
779 bytes
0644
fix_unicode_literals_import.py
367 bytes
0644
fix_xrange_with_import.py
479 bytes
0644
N4ST4R_ID | Naxtarrr