Viewing File: /opt/alt/python35/lib64/python3.5/lib2to3/__pycache__/main.cpython-35.opt-2.pyc



Yf-@sddlmZmZddlZddlZddlZddlZddlZddlZddl	m
Z
ddZGddde
jZ
d	d
ZdddZdS)
)with_statementprint_functionN)refactorc	Cs:|j}|j}tj||||ddddS)Nz
(original)z(refactored)Zlineterm)
splitlinesdifflibZunified_diff)abfilenamer)/opt/alt/python35/lib64/python3.5/main.py
diff_textss
	rcsUeZdZdddfddZddZfddZdd	ZS)
StdoutRefactoringToolrc		ss||_||_|r8|jtjr8|tj7}||_||_||_tt	|j
|||dS)N)	nobackups
show_diffsendswithossep_input_base_dir_output_dir_append_suffixsuperr__init__)	selfZfixersoptionsexplicitrrinput_base_dir
output_dir
append_suffix)	__class__rr
r$s		
			zStdoutRefactoringTool.__init__cOs3|jj|||f|jj|||dS)N)errorsappendloggererror)rmsgargskwargsrrr
	log_errorAszStdoutRefactoringTool.log_errorc
!s|}|jrh|j|jrOtjj|j|t|jd}ntd||jf|jr~||j7}||krtjj	|}tjj
|stj||jd|||j
s|d}tjj|r<ytj|Wn5tk
r;}z|jd|WYdd}~XnXytj||Wn8tk
r}z|jd||WYdd}~XnXtt|j}	|	|||||j
stj||||krtj||dS)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
startswithrrpathjoinlen
ValueErrorrdirnameisdirmakedirslog_messagerlexistsremoveOSErrorrenamerr
write_fileshutilcopymode)
rZnew_textrZold_textencodingZ
orig_filenamerZbackuperrwrite)r rr
r6Es@		

	
#&	z StdoutRefactoringTool.write_filecCs|r|jd|n|jd||jrt|||}yj|jdk	r|j-x|D]}t|qgWtjjWdQRXnx|D]}t|qWWn'tk
rt	d|fdSYnXdS)NzNo changes to %sz
Refactored %sz+couldn't encode %s's diff for your terminal)
r1rrZoutput_lockprintsysstdoutflushUnicodeEncodeErrorwarn)roldnewrZequalZ
diff_lineslinerrr
print_outputls"	



z"StdoutRefactoringTool.print_output)__name__
__module____qualname__rr(r6rErr)r r
rs'rcCstd|fdtjdS)NzWARNING: %sfile)r<r=stderr)r%rrr
rAsrAcstjdd}|jdddddd|jd	d
dddgdd
|jdddddddddd|jdddddgdd|jdddddd|jdddddd|jdddddd |jd!dddd"|jd#d$dddd%|jd&d'dddd(dd)|jd*d+dddd,dd-dd.|jd/d0dddd1|jd2dddd,dd-dd3d(}i}|j|\}}|jrd4|d5<|jstd6d4|_|jr|jr|j	d7|j
r>|jr>|j	d8|jr[|jr[td9|jr{|jr{|j	d:|jrt
d;x!tjD]}t
|qW|sd<S|st
d=d>tjt
d?d>tjd@SdA|krd4}|jrt
dBd>tjd@S|jr1d4|dC<|jrCtjntj}gtj_tjdDdEdF|tjdG}ttj}	tfdHdI|jD}
t}|jr(d(}x;|jD]0}
|
dJkrd4}q|jdK|
qW|r|	j |n|}n|	j |}|j!|
}t"j#j$|}|r|j%t"j&rt"j#j'|rt"j#j(|}|jr|j)t"j&}|j*dL|j|t+t,||t,||j|jdM|dN|jdO|j
}|j-s|r&|j.nRy#|j||j|j/|j0Wn,tj1k
rwt
dPd>tjdSYnX|j2t3t4|j-S)QNusagez2to3 [options] file|dir ...z-dz--doctests_onlyaction
store_truehelpzFix up doctests onlyz-fz--fixr"defaultz1Each FIX specifies a transformation; default: allz-jz--processesstorertypeintzRun 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-dirstrrzXPut 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.Twrite_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:rz1At least one file or directory argument required.rIzUse --help to show usage.-zCan't write to stdin.rformatz%(name)s: %(message)slevelzlib2to3.mainc3s|]}d|VqdS)z.fix_Nr).0fix)	fixer_pkgrr
	<genexpr>szmain.<locals>.<genexpr>allz.fix_z7Output in %r will mirror the input directory %r layout.rrrz+Sorry, -j isn't supported on this platform.)5optparseZOptionParserZ
add_option
parse_argsrTr;rArrr$Z
add_suffixZno_diffsZ
list_fixesr<rZget_all_fix_namesr=rJrverboseloggingDEBUGINFOroothandlersbasicConfig	getLoggersetZget_fixers_from_packageZnofixrZaddunion
differencerr*commonprefixrrr/r.rstripinforsortedr!refactor_stdinZ
doctests_only	processesZMultiprocessingUnsupportedZ	summarizerRbool)r[r&parserrpflagsrZfixnamerXr#Zavail_fixesZunwanted_fixesrZall_presentrZZ	requestedZfixer_namesrZrtr)r[r
mains

	
	
	



	
		
"					
		
	
	
ru)Z
__future__rrr=rrrar7r^rrrZMultiprocessRefactoringToolrrArurrrr
<module>s	g
Back to Directory File Manager