����JFIF���������
1#@!#!123s
D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
alt
/
python34
/
lib64
/
python3.4
/
lib2to3
/
__pycache__
/
Filename :
main.cpython-34.pyc
back
Copy
� i f�-������������������@���s����d��Z��d�d�l�m�Z�m�Z�d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�l �Z �d�d�l �m�Z�d�d����Z�Gd�d ����d �e�j ���Z�d �d����Z�d�d�d ���Z�d�S)z Main program for 2to3. �����)�with_statement�print_functionN����)�refactorc���������� ���C���s:���|��j�����}��|�j�����}�t�j�|��|�|�|�d�d�d�d��S)z%Return a unified diff of two strings.z (original)z(refactored)Zlineterm��)� splitlines�difflibZunified_diff)�a�b�filename��r����1/opt/alt/python34/lib64/python3.4/lib2to3/main.py� diff_texts���s ���� r���c�������������������s[���e��Z�d��Z�d�Z�d�d�d����f�d�d���Z�d�d����Z����f�d�d����Z�d �d ����Z����S)�StdoutRefactoringToola2�� A refactoring tool that can avoid overwriting its input files. Prints output to stdout. Output files can optionally be written to a different directory and or have an extra file suffix appended to their name for use in situations where you do not want to replace the input files. r���c ������� ���������sv���|�|��_��|�|��_�|�r;�|�j�t�j���r;�|�t�j�7}�n��|�|��_�|�|��_�|�|��_�t�t �|����j �|�|�|���d�S)aF�� Args: fixers: A list of fixers to import. options: A dict with RefactoringTool configuration. explicit: A list of fixers to run even if they are explicit. nobackups: If true no backup '.bak' files will be created for those files that are being refactored. show_diffs: Should diffs of the refactoring be printed to stdout? input_base_dir: The base directory for all input files. This class will strip this path prefix off of filenames before substituting it with output_dir. Only meaningful if output_dir is supplied. All files processed by refactor() must start with this path. output_dir: If supplied, all converted files will be written into this directory tree instead of input_base_dir. append_suffix: If supplied, all files output by this tool will have this appended to their filename. Useful for changing .py to .py3 for example by passing append_suffix='3'. N)� nobackups� show_diffs�endswith�os�sep�_input_base_dir�_output_dir�_append_suffix�superr����__init__) �selfZfixers�options�explicitr���r����input_base_dir� output_dir� append_suffix)� __class__r���r ���r���$���s���� zStdoutRefactoringTool.__init__c�������������O���s3���|��j��j�|�|�|�f���|��j�j�|�|�|���d��S)N)�errors�append�logger�error)r����msg�args�kwargsr���r���r ���� log_errorA���s����zStdoutRefactoringTool.log_errorc������� ���!������s��|�}�|��j��rk�|�j�|��j���rO�t�j�j�|��j��|�t�|��j���d������}�qk�t�d�|�|��j�f�����n��|��j�r��|�|��j�7}�n��|�|�k�r��t�j�j �|���}�t�j�j �|���s��t�j�|���n��|��j�d�|�|���n��|��j �s�|�d�}�t�j�j�|���rKy�t�j�|���WqKt�k �rG}�z�|��j�d�|���WYd��d��}�~�XqKXn��y�t�j�|�|���Wq�t�k �r�}�z�|��j�d�|�|���WYd��d��}�~�Xq�Xn��t�t�|����j�} �| �|�|�|�|���|��j �s�t�j�|�|���n��|�|�k�r�t�j�|�|���n��d��S)Nz5filename %s does not start with the input_base_dir %szWriting converted %s to %s.z.bakzCan't remove backup %szCan't rename %s to %s)r���� startswithr���r����path�join�len� ValueErrorr����dirname�isdir�makedirs�log_messager����lexists�remove�OSError�renamer���r���� write_file�shutilZcopymode) r���Znew_textr���Zold_text�encodingZ orig_filenamer���Zbackup�err�write)r ���r���r ���r6���E���s@���� &) z StdoutRefactoringTool.write_filec�������������C���s����|�r�|��j��d�|���n��|��j��d�|���|��j�r��t�|�|�|���}�yi�|��j�d��k �r��|��j��-�x�|�D]�}�t�|���qg�Wt�j�j����Wd��QXn�x�|�D]�}�t�|���q��WWq��t�k �r��t �d�|�f���d��SYq��Xn��d��S)NzNo changes to %sz Refactored %sz+couldn't encode %s's diff for your terminal) r1���r���r���Zoutput_lock�print�sys�stdout�flush�UnicodeEncodeError�warn)r����old�newr���ZequalZ diff_lines�liner���r���r ����print_outputl���s"���� z"StdoutRefactoringTool.print_output)�__name__� __module__�__qualname__�__doc__r���r(���r6���rD���r���r���)r ���r ���r������s ���'r���c�������������C���s���t��d�|��f�d�t�j��d��S)NzWARNING: %s�file)r;���r<����stderr)r%���r���r���r ���r@�������s����r@���c����������������s���t��j�d�d���}�|�j�d�d�d�d�d�d��|�j�d �d �d�d�d�g��d�d ��|�j�d�d�d�d�d�d�d�d�d�d��|�j�d�d�d�d�d�g��d�d��|�j�d�d�d�d�d�d��|�j�d�d�d�d�d�d��|�j�d�d�d�d�d�d ��|�j�d!�d�d�d�d"��|�j�d#�d$�d�d�d�d%��|�j�d&�d'�d�d�d�d(�d�d)��|�j�d*�d+�d�d�d�d,�d�d-�d�d.��|�j�d/�d0�d�d�d�d1��|�j�d2�d�d�d�d,�d�d-�d�d3��d(�}�i��}�|�j�|���\�}�}�|�j�rd4�|�d5�<|�j�s�t�d6���n��d4�|�_�n��|�j�r'|�j�r'|�j �d7���n��|�j �rJ|�j�rJ|�j �d8���n��|�j�rj|�j�rjt�d9���n��|�j�r�|�j�r�|�j �d:���n��|�j�r�t �d;���x!�t�j������D]�}�t �|���q�W|�s�d<�Sn��|�st �d=�d>�t�j��t �d?�d>�t�j��d@�SdA�|�k�r6d4�}�|�j�r6t �dB�d>�t�j��d@�Sn��|�j�rLd4�|�dC�<n��|�j�r^t�j�n�t�j�}�g��t�j�_�t�j�dD�dE�dF�|���t�j�dG���}�t�t�j��������} �t����f�dH�dI����|�j�D����} �t����}�|�j�rCd(�}�x;�|�j�D]0�} �| �dJ�k�rd4�}�q�|�j����dK�| ���q�W|�r:| �j �|���n�|�}�n�| �j �|���}�|�j!�| ���}�t"�j#�j$�|���}�|�r�|�j%�t"�j&���r�t"�j#�j'�|���r�t"�j#�j(�|���}�n��|�j�r�|�j)�t"�j&���}�|�j*�dL�|�j�|���n��t+�t,�|���|�t,�|���|�j�|�j�dM�|�dN�|�j�dO�|�j ��}�|�j-�s�|�rG|�j.����ng�y#�|�j�|�|�j�|�j/�|�j0���WnA�t�j1�k �r�|�j0�d�k�s�t2���t �dP�d>�t�j��d�SYn�X|�j3����n��t4�t5�|�j-�����S)Qz�Main program. Args: fixer_pkg: the name of a package where the fixers are located. args: optional; a list of command line arguments. If omitted, sys.argv[1:] is used. Returns a suggested exit status (0, 1, 2). Zusagez2to3 [options] file|dir ...z-dz--doctests_only�action� store_true�helpzFix up doctests onlyz-fz--fixr"����defaultz1Each FIX specifies a transformation; default: allz-jz--processesZstorer����type�intzRun 2to3 concurrentlyz-xz--nofixz'Prevent a transformation from being runz-lz--list-fixeszList available transformationsz-pz--print-functionz0Modify the grammar so that print() is a functionz-vz --verbosezMore verbose loggingz --no-diffsz#Don't show diffs of the refactoringz-wz--writezWrite back modified filesz-nz--nobackupsFz&Don't write backups for modified filesz-oz--output-dir�strr���zXPut output files in this directory instead of overwriting the input files. Requires -n.z-Wz--write-unchanged-fileszYAlso write files even if no changes were required (useful with --output-dir); implies -w.z--add-suffixzuAppend this string to all output filenames. Requires -n if non-empty. ex: --add-suffix='3' will generate .py3 files.T�write_unchanged_filesz&--write-unchanged-files/-W implies -w.z%Can't use --output-dir/-o without -n.z"Can't use --add-suffix without -n.z@not writing files and not printing diffs; that's not very usefulzCan't use -n without -wz2Available transformations for the -f/--fix option:r���z1At least one file or directory argument required.rI���zUse --help to show usage.�����-zCan't write to stdin.r����formatz%(name)s: %(message)s�levelzlib2to3.mainc�������������3���s���|��]�}����d��|�Vq�d�S)z.fix_Nr���)�.0�fix)� fixer_pkgr���r ���� <genexpr>����s����zmain.<locals>.<genexpr>�allz.fix_z7Output in %r will mirror the input directory %r layout.r���r���r���z+Sorry, -j isn't supported on this platform.)6�optparseZOptionParserZ add_option� parse_argsrR���r:���r@���r���r���r$���Z add_suffixZno_diffsZ list_fixesr;���r���Zget_all_fix_namesr<���rJ���r����verbose�logging�DEBUG�INFO�rootZhandlersZbasicConfigZ getLogger�setZget_fixers_from_packageZnofixrX����add�union� differencer���r*����commonprefixr���r���r/���r.����rstrip�infor����sortedr!����refactor_stdinZ doctests_onlyZ processesZMultiprocessingUnsupported�AssertionErrorZ summarizerP����bool)rY���r&����parserrk����flagsr���ZfixnamerV���r#���Zavail_fixesZunwanted_fixesr���Zall_presentrX���Z requestedZfixer_namesr���Zrtr���)rY���r ����main����s����� " rp���)rH���Z __future__r���r���r<���r���r���r_���r7���r\���r���r���r���ZMultiprocessRefactoringToolr���r@���rp���r���r���r���r ����<module>���s��� g