comparison env/lib/python3.7/site-packages/libfuturize/fixes/fix_cmp.py @ 5:9b1c78e6ba9c draft default tip

"planemo upload commit 6c0a8142489327ece472c84e558c47da711a9142"
author shellac
date Mon, 01 Jun 2020 08:59:25 -0400
parents 79f47841a781
children
comparison
equal deleted inserted replaced
4:79f47841a781 5:9b1c78e6ba9c
1 # coding: utf-8
2 """
3 Fixer for the cmp() function on Py2, which was removed in Py3.
4
5 Adds this import line::
6
7 from past.builtins import cmp
8
9 if cmp() is called in the code.
10 """
11
12 from __future__ import unicode_literals
13 from lib2to3 import fixer_base
14
15 from libfuturize.fixer_util import touch_import_top
16
17
18 expression = "name='cmp'"
19
20
21 class FixCmp(fixer_base.BaseFix):
22 BM_compatible = True
23 run_order = 9
24
25 PATTERN = """
26 power<
27 ({0}) trailer< '(' args=[any] ')' >
28 rest=any* >
29 """.format(expression)
30
31 def transform(self, node, results):
32 name = results["name"]
33 touch_import_top(u'past.builtins', name.value, node)