python (3.12.0)

(root)/
lib/
python3.12/
idlelib/
__pycache__/
debugger.cpython-312.pyc

̑eJddlZddlZddlddlmZmZddlmZddlm	Z	ddl
mZGddejZ
Gd	d
ZGdde	ZGd
dZedk(rddlmZedddyy)N)*)Frame	Scrollbar)macosx)ScrolledList)ListedToplevelc*eZdZdZdZdZdZdZy)IdbcP||_tjj|yN)guibdbBdb__init__)selfr
s  D/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/idlelib/debugger.pyrzIdb.__init__sc|j|r|jy|j|}	|jj	||y#t
$rYywxYwr)in_rpc_codeset_step_Idb__frame2messager
interactionTclError)rframemessages   r	user_linez
Idb.user_linesWE"MMO&&u-	HH  %0		sA	AAc|j|r|jy|j|}|jj	|||yr)rrrr
r)rrinfors    ruser_exceptionzIdb.user_exceptionsBE"MMO&&u-WeT2rc|jjjdry|j}|jj}d|vrd|vry|j	|S)Nzrpc.pyTidlelibdebuggerF)f_codeco_filenamecountf_backr)rr
prev_frame	prev_names    rrzIdb.in_rpc_code#s\<<##))(3J"))55II%*	*A##J//rc|j}|j}|j}tjj|}|d|}|jdk7r|d|jd}|S)N:?: z())r#r$f_linenoospathbasenameco_name)rrcodefilenamelinenor0rs       r__frame2messagezIdb.__frame2message/sj||##77##H-Jax(<<3 	DLL>4GrN)__name__
__module____qualname__rrrrrrrr
r
s3
0rr
ceZdZdxZxZxZZddZdZddZ	dZ
ddZdZdZ
d	Zd
ZdZdZd
ZdZdZdZdZdZdZdZdZdZddZdZdZdZdZ y)DebuggerNc|t|}||_||_d|_|j	d|_d|_yNr)r
pyshellidbrmake_guiinteracting
nesting_level)rr>r?s   rrzDebugger.__init__>s>;d)C


rcjdkDr1jjjdfdy	d_j
jd_S#d_wxYw)Nrdc"jSr)run)argsrsr<lambda>zDebugger.run.<locals>.<lambda>hs4r)rB
abort_looprootafterrAr?rF)rrGs``rrFzDebugger.runHsc<!OOIIOOC!89	! D488<<& DqDsA++	A4cT	|j|jr|jj	y|j
r!|j
j
d|_|jj|jjy#t$rYwxYwr)
quit	ExceptionrAtopbellstackviewercloser>close_debuggerdestroyrevents  rrSzDebugger.closeps	IIKHHMMO""$d&6	
##%		sB	B'&B'cJ|j}|j|_|jx|_}t|x|_}|jjd|jj
d|jd|j|jjd|jt|x|_}|jjdgx|_
}t|d|jx|_}|j#|t|d	|j$x|_}|j#|t|d
|j(x|_}|j#|t|d|j,x|_}|j#|t|d|j0x|_}|j#||D]&}|j3d
|jd(t|x|_}|j4jd|j6s5t9||j:_|j6j=dt?|d|j@|j6|_!|jBjEdd|jFst9||j:_#t?|d|jH|jF|_%|jJjEdd|jLs5t9||j:_&|jLj=dt?|d|jN|jL|_(|jPjEdd|jRst9||j:_)t?|d|jT|jR|_+|jVjEddtY|d|_-|jZjdtY|d|_.|j\jdd|j\j_d|_0t|d|_1|jbjddt||_2|jdjddt|d|_3|jfjdd|j6jir|jA|jLjir|jO|jRjir|jUyy)Nz
Debug ControlDebugWM_DELETE_WINDOWz<Escape>w)anchorGo)textcommandStepOverOutQuitdisabledstateleft)siderIStack)r^r_variablerrowcolumnSourceLocalsGlobalsx)r\fill
background)heightbothexpandrr)5r>flistrKrrPwm_titlewm_iconnamewm_protocolrSbindrbframepackbuttonsButtoncontbcontappendstepbstepnextbnextretbretrN	configurecframevstack
BooleanVar	__class__setCheckbutton
show_stackbstackgridvsourceshow_sourcebsourcevlocalsshow_localsblocalsvglobalsshow_globalsbglobalsLabelstatuserrorcgeterrorbgfstackflocalsfglobalsget)rr>rKrPr}blbrs        rr@zDebugger.make_guis-,,]]
"<<'	D'--3/*W%*DJJ7

j$**-$Sz)f$rT499EE
Q
		!VTYYGG
Q
		!VTYYGG
Q
		!vE488DD	A
		!vFDIIFF	A
		!	 A
KKjK)
FFF	  %V},ff%{{$.sODNN!KKOOA!&$//DKKIQq)||%/_DNN""64#3#3dllLa*||%/_DNN"LLQ"64#3#3dllLa*}}&0oDNN##FD$5$5

O


q+C,$3s+


s-zz|4C*/Sz0c!,


!&1;;??OO<<==rc0||_|jj||r |\}}}	|j}|	|d|}d}nd}d}|j}|jj|||j}	|	r;|jj|j|\}
}|	j|
||jd|jjr|j|j D]}|jd	|j"j%|xj&dz
c_|j(j*j-d
d|xj&dzc_|j D]}|jd	|jjd|jjd|jd|_y#t$rdt|z}YwxYw#YxYw)
Nr^z%sr,yellow)r^rsrInormalrevwait::idledebugwaitrd)rrrr6AttributeErrorstrrrrRr?	get_stack
load_stackshow_variablesrrsync_source_linerrPwakeuprBrKtkcall)
rrrrtypevaluetbm1bgsvstackirs
             rrzDebugger.interactions
7+"OD%
&]] 4r%)BBBBB

"4



xx))$**b9HE1MM%#A<<!!#	(A
KKhK'	(	
	
a		'#45a	*A
KKjK)	*2&

">
Q"
&CI%
&sG2H2H
H
Hc|j}|sy|j|\}}|dd|ddzdk7r=tjj	|r|j
j
||yyy)NrIz<>)r_Debugger__frame2fileliner.r/existsrxgotofileline)rrr3r4s    rrzDebugger.sync_source_linesk

007&BQ<(23-'4/BGGNN84LJJ##Hf55M/rcR|j}|j}|j}||fSr)r#r$r-)rrr2r3r4s     r__frame2filelinezDebugger.__frame2filelines*||##rcX|jj|jyr)r?set_continuerJrs rrz
Debugger.contsrcX|jj|jyr)r?rrJrs rrz
Debugger.steprcn|jj|j|jyr)r?set_nextrrJrs rrz
Debugger.nexts"$**%rcn|jj|j|jyr)r?
set_returnrrJrs rrzDebugger.rets"DJJ'rcX|jj|jyr)r?set_quitrJrs rrNz
Debugger.quitrrcR|jjjdddy)Nrr1)rKrrrs rrJzDebugger.abort_loop s		%!2C8rc|js|jjrqt|j|j
|x|_}|jr<|jj|jd\}}|j||yy|j}|r1|jjsd|_|jd|jd<y)NrIrt)rRrrStackViewerrrxrr?rrrS)rrrrs    rrzDebugger.show_stack%sDKKOO$5$/TZZ$NNDrzz88--djj$?q

eQ'!!B$++//+#' 
$%DKK!rcZ|jjr|jyyr)rrrrs rrzDebugger.show_source2s#<<!!#rc8|d|_|jyr=)rr)r	stackitems  r
show_framezDebugger.show_frame6sq\
rc|j}|jjr|sDt|jd|_n(|r&d|_|jd|jd<|j
y)NrorIrt)localsviewerrrNamespaceViewerrrSr)rlvs  rrzDebugger.show_locals=sa


<<$3DLL($K!$(!
)*X&rc|j}|jjr|sDt|jd|_n(|r&d|_|jd|jd<|j
y)NrprIrt)
globalsviewerrrrrrSr)rgvs  rrzDebugger.show_globalsIsa


==%4T]]I%N"%)"
*+

h'rcl|j}|j}|j}|sdx}}n"|j}|j}|r|r||urd}|r1|j|||jjj|r2|j|||jjjyyr)	rrrf_locals	f_globals	load_dictr>interprpcclt)rforcerrrldictgdicts       rrzDebugger.show_variablesUs







  EENNEOOEbUe^
LLt||':':'A'AB
LLt||':':'A'ABrc<|jj||yr)r?	set_breakrr3r4s   rset_breakpoint_herezDebugger.set_breakpoint_herees8V,rc<|jj||yr)r?clear_breakrs   rclear_breakpoint_herezDebugger.clear_breakpoint_herehsXv.rc:|jj|yr)r?clear_all_file_breaks)rr3s  rclear_file_breakszDebugger.clear_file_breaksks&&x0rc|jjjD]<}|jj}	|j
D]}|j
||>y#t$rYKwxYw)z=Load PyShellEditorWindow breakpoints into subprocess debuggerN)r>rxinversedictior3breakpointsrr)reditwinr3r4s    rload_breakpointszDebugger.load_breakpointsnsn||))55	Gzz**H
%11?F,,Xv>?	
"

s#A!!	A-,A-r)r)!r6r7r8rrrrrrFrSr@rrrrrrrrNrJrRrrrrrrrrrrrrr9rrr;r;:s,00F0W0w&!P"I V0d6 9K&$LM

C -/1rr;cDeZdZdZddZdZdZdZdZdZ	d	Z
d
Zy)rctjrtj||ntj||d||_||_g|_y)NP)width)risAquaTkrrrxr
r)rmasterrxr
s    rrzStackViewer.__init__zsE??
!!$/!!$b9

rNc||_|jtt|D]}||\}}	|jd}|j
}|j}|j}	ddl}
|
j||}|j}|	dvr	d|||fz}n	d||	||fz}||k(rd|z}|j|||j|yy#d}YxYw)Nr6r+r)r+rNz%s, line %d: %sz%s.%s(), line %d: %sz> )
rclearrangelenrr#r$r1	linecachegetlinestriprselect)
rrindexrrr4modnamer2r3funcnamer
sourcelineitems
             rrzStackViewer.load_stacks


s5z"	A!!HME6
//*5<<D''H||H"**8V<J#))+J?*(GVZ+HH-(171EEEzd{KK'	(KK!
sCCcH|jrtj||Syoverride base methodN)rrpopup_eventrVs  rrzStackViewer.popup_events!::++D%88rc|j}|jd|j|jd|jy)rzGo to source line)labelr_zShow stack frameN)menuadd_commandgoto_source_lineshow_stack_frame)rrs  r	fill_menuzStackViewer.fill_menusIyy2!%!6!6		81!%!6!6		8rcd|cxkrt|jkr,ny|jj|j|yy)rrN)rrr
rrrs  r	on_selectzStackViewer.on_selects7'DJJ'HH

5 12(rc&|j|yr)rrs  r	on_doublezStackViewer.on_doublesrc\|jjd}|j|y)Nactive)listboxrrrs  rrzStackViewer.goto_source_lines$""8,rc|jjd}d|cxkrt|jkr,ny|jj|j|yy)Nrr)rrrrr
rrs  rrzStackViewer.show_stack_framesK""8,'DJJ'HH

5 12(rc8d|cxkrt|jksyy|j|\}}|j}|j}tj
j
|r0|jj|}|r|j|yyyr=)
rrr#r$r.r/isfilerxopengotoline)rrrr4r2r3edits       rrzStackViewer.show_sourcesU,S_,-

5)
v||##
77>>(#::??8,D

f%$rr)r6r7r8rrrrrrrrrr9rrrrxs/
49
83
  3
	&rrc&eZdZddZdZddZdZy)rNc
d}d}|rdt|z}||_||_ddl}|j	|_d|j
_d|j
_t|x|_	}|jjddt||dd	
|_|jjdt|d
x|_}|jddt|t!dt#d|dd||fx|_}	|	jddd|	j&|d<|j(|	d<t|	x|_}
|	j-dd|
d|_|j1|y)Nr(<rIrurvgroove)r^borderwidthreliefrq)rrvbar)namerighty)rhrr,)rtscrollregionrg)rhrrrwr_yscrollcommandnw)windowr\)rrtitlereprlibReprrepr	maxstringmaxotherrrr~rrrr/Canvasminmaxcanvasyviewrsubframe
create_windowsfidr)rrr8dictrrtr9rr/rArCs           rrzNamespaceViewer.__init__sWD	\F
LLN	 				"6]*
U

qv.5u!HM


S!$U88	D		wS	)%e-0c"fo-F45q%3H J	Jf	fQ7 ,,Y#'88 #(=0
((Aht(L	trrcx||jur|sy|j}|j}t|jjD]}|j
d|_|s!t|d}|jddn|j}t|}	d}
|	D]}||}|jj|}
|r|
dd}
t||}|j|
ddt|dd	}|jd|
|j|
dd|
dz}
||_|j|j}|j!}|j"}dd||f|j"d
<|dkDrd|d<|j%d
y||d<|j%d
y)NNonerrrkrIrr6)rlrmsticky)rr-r4r3rt)rw)rFrCrlistchildrenvaluesrUrrkeyssortedr;Entryinsertupdate_idletaskswinfo_reqwidthwinfo_reqheightrAr~)rrFr
rpc_clientrCrcl	keys_listnamesrlr0rsvaluerrtrAs                 rrzNamespaceViewer.load_dicts499U==

h''..01	A
IIK		hV,A
FFqF#		I9%EC
T
.#Ab\F(.3q6(!;F#3q6!e
	!!#'')))+'(!UF&;N#C<"F8JJaJ %F8JJaJ rc8|jjyr)rrUrs rrSzNamespaceViewer.close s

rr)rN)r6r7r8rrFrrSr9rrrrs6D4!lrr__main__)mainzidlelib.idle_test.test_debuggerr+F)	verbosityexit)rr.tkintertkinter.ttkrrr!ridlelib.scrolledlistridlelib.windowrrr
r;rrr6unittestr\r9rr<module>rdss
	(-)+#''+\|||	P&,P&fVVpz	*aeDr