B
ÍAÒ[VD ã @ s\ d Z ddlmZmZmZmZmZmZ ddlm Z m
Z
ddlmZ
mZ ddlmZ ddlm
Z
mZmZm
Z
mZmZ ddlZdd „ Zd4d
d„Zd5dd
„Zd6dd„Zdd„ Zdd„ Zdd„ Zdd„ Zd7dd„Ze
je
je
je
j e
j!fZ"e
j#e
j$fZ%dd„ Z&d8dd„Z'dd„ Z(d d!„ Z)d"d#„ Z*d$d%„ Z+d&d'„ Z,d(d)„ Z-d*d+„ Z.d,Z/d-Z0d.d/„ Z1d0d1„ Z2d9d2d3„Z3dS ):zå
Utility functions from 2to3, 3to2 and python-modernize (and some home-grown
ones).
Licences:
2to3: PSF License v2
3to2: Apache Software License (from 3to2/setup.py)
python-modernize licence: BSD (from python-modernize/LICENSE)
é )Ú
FromImportÚNewlineÚ is_importÚ find_rootÚdoes_tree_importÚComma)ÚLeafÚNode)Úpython_symbolsÚpython_grammar)Útoken)r ÚCallÚNameÚsymsr ÚNumberNc s~ dˆ krˆ S ˆ d¡r"ˆ dd… ‰ ‡ fdd„|D ƒ}t|ƒdkr^tdd d
d„ |D ƒ¡ ƒ‚nt|ƒdkrrtd
ƒ‚|d S dS )al
Examples:
>>> canonical_fix_name('fix_wrap_text_literals')
'libfuturize.fixes.fix_wrap_text_literals'
>>> canonical_fix_name('wrap_text_literals')
'libfuturize.fixes.fix_wrap_text_literals'
>>> canonical_fix_name('wrap_te')
ValueError("unknown fixer name")
>>> canonical_fix_name('wrap')
ValueError("ambiguous fixer name")
z.fix_Zfix_é Nc s g | ]}| d ˆ ¡¡r|‘qS )zfix_{0})ÚendswithÚformat)Ú.0Úf)Úfix© úG/opt/alt/python37/lib/python3.7/site-packages/libfuturize/fixer_util.pyú