python (3.11.7)

(root)/
lib/
python3.11/
lib2to3/
__pycache__/
refactor.cpython-311.opt-2.pyc

esk>	dZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZmZm
Z
ddlmZddlmZmZddlmZdd
ZGddeZd
ZdZdZdZdZGddeZGddeZGddeZ GddeZ!dS)z#Guido van Rossum <guido@python.org>N)chain)drivertokenizetoken)	find_root)pytreepygram)btm_matcherTc	t|ggdg}g}tj|jD]<\}}}|dr!|r
|dd}||=|S)N*fix_)
__import__pkgutiliter_modules__path__
startswithappend)	fixer_pkg
remove_prefixpkg	fix_namesfindernameispkgs       D/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/lib2to3/refactor.pyget_all_fix_namesrsO
YB
.
.CI&3CLAA##e??6""	#
 ABBxT"""ceZdZdS)
_EveryNodeN__name__
__module____qualname__rrr!r!+Drr!c	t|tjtjfr|jt
|jhSt|tjr"|jrt|jSt
t|tj	rAt}|jD])}|D]$}|t|%*|Std|z)Nz$Oh no! I don't understand pattern %s)
isinstancer	NodePatternLeafPatterntyper!NegatedPatterncontent_get_head_typesWildcardPatternsetupdate	Exception)patrpxs    rr/r//s9#*F,>?@@8z#v,--;	0"3;///#v-..EE	-	-A
-
-++,,,,
-
:SA
B
BBrc\	tjt}g}|D]}|jr[	t	|j}|D]}|||?#t$r||Y`wxYw|j!||j|||ttj
jtj
j
D]}|||t|SN)collectionsdefaultdictlistpatternr/rr!_accept_typerr
python_grammar
symbol2numbervaluestokensextenddict)
fixer_list
head_nodeseveryfixerheads	node_types      r_get_headnode_dictrKKsO/(..JE
$
$=	$
8'
66"'88Iy)0077778
$
$
$U#####
$!-5-.55e<<<<U####60>EEGG!0799,,	9$$U++++
sAB?Bc>	fdtdDS)Nc g|]
}dz|zS.r&).0fix_namepkg_names  r
<listcomp>z+get_fixers_from_package.<locals>.<listcomp>hs8@@@
sNX%@@@rF)r)rRs`rget_fixers_from_packagerTdsE@@@@-h>>@@@@rc|Sr9r&)objs r	_identityrWksJrchd}tjtj|jfd}ttjtjtj	h}t}		|\}}||vr|tjkr|rnd}n|tjkr|dkr|\}}|tjks|dkrn|\}}|tjks|dkrn|\}}|tj
kr|dkr
|\}}|tjkrV|||\}}|tj
ks|dkrn|\}}|tjkVnn n#t$rYnwxYwt|S)	NFcBt}|d|dfS)Nrr)next)tokgens radvancez(_detect_future_features.<locals>.advancers 3ii1vs1v~rTfrom
__future__import(,)rgenerate_tokensioStringIOreadline	frozensetrNEWLINENLCOMMENTr1STRINGNAMEOPadd
StopIteration)sourcehave_docstringr]ignorefeaturestpvaluer\s       @r_detect_future_featuresrvosN

"2;v#6#6#?
@
@C
x{EMB
C
CFuuH
			IBV||u|##!!%uz!!evoo#GII	E##u'<'<#GII	E##u'8'8#GII	E>>esll '		IBEJ&&LL''' '		IBUX~~# '		IBEJ&&3	4



Xs3D!F
F"!F"ceZdZdS)
FixerErrorNr"r&rrrxrxs&&rrxceZdZddddZdZdZddZdZdZd	Z	d
Z
dZddZdd
Z
dZddZdZd dZdZdZ		d!dZd"dZdZdZdZdZdZdZdZdZdS)#RefactoringToolF)print_function
exec_functionwrite_unchanged_filesFixrNcR	||_|pg|_|j|_||j|tj|_|jdr|jj	d=n|jdr
|jj	d=|j
d|_g|_tjd|_g|_d|_t%j|jt(j|j|_|\|_|_g|_t5j|_g|_g|_t?|j|jD]k}|j r|j!|$||jvr|j"|H||jvr|j"|ltG|j|_$tG|j|_%dS)	Nr{printr|execr}rzF)convertlogger)&fixersexplicit_default_optionscopyoptionsr2r
r?grammarkeywordsgetr}errorslogging	getLoggerr	fixer_logwroterDriverr	r
get_fixers	pre_order
post_orderfilesbm
BottomMatcherBM
bmi_pre_orderbmi_post_orderr
BM_compatible	add_fixerrrKbmi_pre_order_headsbmi_post_order_heads)selffixer_namesrrrHs     r__init__zRefactoringTool.__init__s	" B
,1133L(((,1133<()	.%g..
\/
*	.%f-
&*\%5%56M%N%N"'(9::
mDL,2N+/;888+///*;*;'
"$$ 4?DN;;	2	2E"
2!!%(((($.(("))%0000$/))#**5111#5d6H#I#I $6t7J$K$K!!!rc	g}g}|jD]}t|iidg}|ddd}||jr|t|jd}|d}|jdd|Dz}	t||}n$#t$rtd|d|dwxYw||j|j
}	|	jr*|jd	ur!||jvr|d
|!|d||	jdkr||	Y|	jd
kr||	{td|	jzt'jd}
||
||
||fS)Nr
rOr_c6g|]}|Sr&)title)rPr6s  rrSz.RefactoringTool.get_fixers.<locals>.<listcomp>s 5O5O5OAaggii5O5O5OrzCan't find TzSkipping optional fixer: %szAdding transformation: %sprepostzIllegal fixer order: %r	run_orderkey)rrrsplitrFILE_PREFIXlensplitCLASS_PREFIXjoingetattrAttributeErrorrxrrrlog_message	log_debugorderroperator
attrgettersort)rpre_order_fixerspost_order_fixersfix_mod_pathmodrQparts
class_name	fix_classrHkey_funcs           rrzRefactoringTool.get_fixerss'	 K	J	JL\2rC599C#**32226H""4#344
<#C(8$9$9$:$:;NN3''E*RWW5O5O5O5O5O-P-PPJ
X#C44		!
X
X
X jxxx!LMMSWW
XIdlDN;;E~
$-t";"; 
55  !>IIINN6AAA{e## ''....&&!((//// !:U[!HIII&{33(+++8,,, "344s2C!C$c	r9r&)rmsgargskwdss    r	log_errorzRefactoringTool.log_errors*
rcJ	|r||z}|j|dSr9)rinforrrs   rrzRefactoringTool.log_messages2$	*CrcH|r||z}|j|dSr9)rdebugrs   rrzRefactoringTool.log_debug
s/	*C#rc	dSr9r&)rold_textnew_textfilenameequals     rprint_outputzRefactoringTool.print_outputs	rc	|D]P}tj|r||||9||||QdSr9)ospathisdirrefactor_dir
refactor_file)ritemswrite
doctests_onlydir_or_files     rrefactorzRefactoringTool.refactorso7 	F	FKw}}[))
F!!+umDDDD"";}EEEE		F	Frc	tjdz}tj|D]\}}}|d||||D]w}|ds`tj|d|kr7tj||}	|	|	||xd|D|dd<dS)NpyzDescending into %srOrc<g|]}|d|SrN)r)rPdns  rrSz0RefactoringTool.refactor_dir.<locals>.<listcomp>2s)KKK"

c8J8JK2KKKr)
rextsepwalkrrrrsplitextrr)
rdir_namerrpy_extdirpathdirnames	filenamesrfullnames
          rrzRefactoringTool.refactor_dir s	T!,.GH,=,=
	L
	L(GXyNN/999MMOOONN!
G
G,,GG$$T**1-77!w||GT::H&&x
FFFKKKKKHQQQKK
	L
	Lrc		t|d}n/#t$r"}|d||Yd}~dSd}~wwxYw	tj|jd}|n#|wxYwtj|d|d5}||fcdddS#1swxYwYdS)NrbzCan't open %s: %sNNrr5rencodingnewline)	openOSErrorrrdetect_encodingrfcloserdread)rrferrrs     r_read_python_sourcez#RefactoringTool._read_python_source4s'		Xt$$AA			NN.#>>>:::::		/
;;A>H
GGIIIIAGGIIII
WXsXr
B
B
B	&a6688X%	&	&	&	&	&	&	&	&	&	&	&	&	&	&	&	&	&	&s0
A;AA88B)CCCc	||\}}|dS|dz
}|rl|d||||}|js||kr||||||dS|d|dS|||}|js	|r7|jr0|t|dd|||dS|d|dS)N
zRefactoring doctests in %szNo doctest changes in %sr)rrzNo changes in %s)rrrefactor_docstringr}processed_filerefactor_stringwas_changedstr)rrrrinputroutputtrees        rrzRefactoringTool.refactor_fileDsC228<<x=F

	=NN7BBB,,UH==F)
EVu__##FHeUHMMMMM98DDDDD''x88D)
=d
=t7G
=##CIIcrcNH*/($DDDDD18<<<<<rc	t|}d|vrtj|j_	|j|}nK#t$r>}|d||jj	|Yd}~|j|j_dSd}~wwxYw	|j|j_n#|j|j_wxYw||_
|d|||||S)Nr{zCan't parse %s: %s: %szRefactoring %s)
rvr
!python_grammar_no_print_statementrrparse_stringr3r	__class__r#future_featuresr
refactor_tree)rdatarrsrrs      rrzRefactoringTool.refactor_string[s		+400x''"("JDK	/;++D11DD			NN3!7
>
>
>FFF"&,DK	
#',DK$,DK....''...4&&&s/AB%
B"B
3B%
BB%%B8ctj}|rh|d||d}|js||kr||d|dS|ddS||d}|js	|r-|jr&|t|d|dS|ddS)NzRefactoring doctests in stdinz<stdin>zNo doctest changes in stdinzNo changes in stdin)
sysstdinrrrr}rrrr)rrrrrs     rrefactor_stdinzRefactoringTool.refactor_stdinvs	  	6NN:;;;,,UI>>F)
>Vu__##FIu=====<=====''y99D)
6d
6t7G
6##CIIy%@@@@@455555rc
	t|j|jD]}|||||j|||j||j|	}t|r|jjD]}||vr||r||
tjjd|jr+||
tjjt'||D]8}|||vr|||	t+|n#t,$rYEwxYw|jr
||jvrZ||}|r|||}||||D]*}|jsg|_|j|+|j|	}|D],}	|	|vrg||	<||	||	-:t|t|j|jD]}||||jS)NT)rreverser)rrr
start_treetraverse_byrrrrunleavesanyrArrr	Basedepthkeep_line_order
get_linenor<remover
ValueErrorfixers_appliedmatch	transformreplacerrCfinish_treer)
rrrrH	match_setnoderesultsnewnew_matchesfxrs
          rrzRefactoringTool.refactor_trees*
	4>4?;;	)	)ET4((((	
14>>3C3CDDD2DOO4E4EFFFGKK

..	)""$$%%/	L.
L.
LI%%)E*:%e$))fk.?)NNN,J"%(--&+2H-III $Yu%5 6 6$L$L9U#333%e,33D999%%dOOOO)%%%%H%
 .%5D<O3O3O$"'++d"3"3"L"'//$"@"@C" $S 1 1 1,/NN,<,<!F!FD,0+>%A>@(;$($7$>$>u$E$E$E$E/3gkk#**,,.G.G+6!L!LC+.)+;+;79	#$-cN$9$9+c:J$K$K$K$K_)""$$%%/	Lb4>4?;;	*	*EdD))))sF&&
F32F3c	|sdS|D]X}||jD]H}||}|r/|||}||||}IYdSr9)r,rrr)rr	traversalr!rHr"r#s       rrzRefactoringTool.traverse_bys
		F	#	#D	*
#
#++d++#//$88CS)))"

#	#	#rc`	|j||||d}|dS||k}||||||r|d||jsdS|r|||||dS|d|dS)NrzNo changes to %szNot writing changes to %s)rrrrrr}
write_file)rrrrrrrs       rrzRefactoringTool.processed_files		
(###//99!<HH$(Hh>>>	NN-x888-
	BOOHh(CCCCCNN6AAAAArc		tj|d|d}n/#t$r"}|d||Yd}~dSd}~wwxYw|5	||n.#t$r!}|d||Yd}~nd}~wwxYwdddn#1swxYwY|d|d|_dS)NwrrzCan't create %s: %szCan't write %s: %szWrote changes to %sT)rdrrrrrr)rrrrrfprs       rr)zRefactoringTool.write_files]		32FFFBB			NN0(C@@@FFFFF		D	D
D""""
D
D
D3XsCCCCCCCC
D	D	D	D	D	D	D	D	D	D	D	D	D	D	D	D
	
,h777


sP
AAA
BA%$B%
B/BBBBB#&B#z>>> z... c		g}d}d}d}d}|dD])}|dz
}||jrW|+|||||||}|g}||j}	|d|	}|V|||jzs#|||jzdzkr|	||+||||||d}d}|	|+|+||||||d
|S)NrTkeependsrrr)
splitlineslstriprPS1rCrefactor_doctestfindPS2rstriprr)
rrrresultblockblock_linenoindentlinenolineis
          rrz"RefactoringTool.refactor_docstrings
	$$d$33	$	$DaKF{{}}''11
$$MM$"7"7|8>#J#JKKK%IIdh''bqb$??6DH#455%6DHOO$5$55<<<T""""$MM$"7"7|8>#J#JKKK

d####MM$//|06BB
C
C
Cwwvrc		||}n#t$r}jtjr.|D]+}d|d,d|||j	j
||cYd}~Sd}~wwxYw||rt|
d}|d|dz
||dz
d}}	|dds|dxxdz
cc<jz|dzg}|r|fd	|Dz
}|S)
Nz
Source: %srz+Can't parse docstring in %s line %s: %s: %sTr.rrrc*g|]}jz|zSr&)r5)rPr<r:rs  rrSz4RefactoringTool.refactor_doctest.<locals>.<listcomp>^s%CCCt&48+d2CCCr)parse_blockr3risEnabledForrDEBUGrr6rrr#rrr0endswithr2pop)
rr8r;r:rrrr<r#clippeds
`  `      rr3z RefactoringTool.refactor_doctestDs		##E66::DD			{''
66
D!DDDNN<T1B1BCCCCNNH#VS]-CS
J
J
JLLLLLL
	dH--		Dd))&&&55Cyqy>3vaxyy>SGr7##D))
 B4dh&34E
DCCCCCsCCCCs
B(A6B#B(#B(c6|jrd}nd}|js|d|n5|d||jD]}|||jr4|d|jD]}|||jrut|jdkr|dn(|dt|j|jD]\}}}|j|g|Ri|dSdS)	Nwerez
need to bezNo files %s modified.zFiles that %s modified:z$Warnings/messages while refactoring:rzThere was 1 error:zThere were %d errors:)rrrrrr)rrGfilemessagerrrs       r	summarizezRefactoringTool.summarizeask:	 DDDz	'4d;;;;6===

'
'  &&&&>	*CDDD>
*
*  ))));	54;1$$  !56666  !8#dk:J:JKKK#';
5
5T4  4t444t4444
	5	5

5
5rc	|j||||}t|_|Sr9)rparse_tokens	wrap_toksrgr)rr8r;r:rs     rr@zRefactoringTool.parse_blockxs?	
{''uff(M(MNN({{rc#K	tj|||j}|D]+\}}\}}\}	}
}||dz
z
}|	|dz
z
}	||||f|	|
f|fV,dS)Nr)rrc	gen_lines__next__)rr8r;r:rBr,ruline0col0line1col1	line_texts            rrMzRefactoringTool.wrap_tokssI)$..*G*G*PQQDJ	G	G@D%%
yVaZEVaZEt}udmYFFFFF	G	Grc#K	||jz}||jz}|}|D]h}||r|t|dVn5||dzkrdVntd|d||}i	dV)Nrzline=z	, prefix=Tr)r2r5rrr6AssertionError)rr8r:prefix1prefix2prefixr<s       rrOzRefactoringTool.gen_liness	48#48#		Dv&&
L3v;;<<(((((4///



$nTTT66%JKKKFF	HHH	rr)FF)F)NFNr9)r#r$r%rrrrrrrrrrrrrrr
rrrr)r2r5rr3rJr@rMrOr&rrrzrzs+0).2799LK3L3L3L3Ln&5&5&5P



FFFFLLLL(&&& ====.66666 M M M ^###.GL $BBBB**C
C)))V:555.GGGrrzceZdZdS)MultiprocessingUnsupportedNr"r&rrr\r\r'rr\cBeZdZfdZ		dfd	ZfdZfdZxZS)MultiprocessRefactoringToolcdtt|j|i|d|_d|_dSr9)superr^rqueueoutput_lockrrkwargsrs   rrz$MultiprocessRefactoringTool.__init__s;9)40094J6JJJ
rFrc|dkr*tt|||S	ddln#t$rt
wxYwjtd_	_
fdt|D}	|D]}|tt|||j
t|D]}jd|D]*}|r|
+d_dS#j
t|D]}jd|D]*}|r|
+d_wxYw)Nrrz already doing multiple processescFg|]}jS))target)Process_child)rPr=multiprocessingrs  rrSz8MultiprocessRefactoringTool.refactor.<locals>.<listcomp>s<444%,,DK,@@444r)r`r^rrjImportErrorr\raRuntimeError
JoinableQueueLockrbrangestartrputis_alive)
rrrr
num_processes	processesr6r=rjrs
`       @rrz$MultiprocessRefactoringTool.refactors/A4d;;DDum--
-	-"""""	-	-	-,,	-:!ABBB$2244
*//1144444#M22444		

				-t44==eU>K
M
M
M
JOO=))
%
%
t$$$$

::<<FFHHHDJJJ

JOO=))
%
%
t$$$$

::<<FFHHHDJs:A4AE22A;G-c4|j}|{|\}}	tt|j|i||jn#|jwxYw|j}|ydSdSr9)rarr`r^r	task_done)rtaskrrdrs    rriz"MultiprocessRefactoringTool._childsz~~LD&
'F1488F%#%%%
$$&&&&
$$&&&&:>>##Ds AA8c|j|j||fdStt|j|i|Sr9)rarqr`r^rrcs   rrz)MultiprocessRefactoringTool.refactor_filesV:!JNND&>*****I54d;;I!!!
!r)FFr)r#r$r%rrrir
__classcell__)rs@rr^r^s     
:? :	$	$	$	$	$!!!!!!!!!rr^)T)"
__author__rdrrrrrr:	itertoolsrpgen2rrr
fixer_utilrrr	r
rrrr3r!r/rKrTrWrvrxobjectrzr\r^r&rr<module>rs3

							



+*********!!!!!!												CCC82@@@%%%P''''''''FFFFFfFFFR								4!4!4!4!4!/4!4!4!4!4!r