Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 18.117.225.254
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : debugger.cpython-310.pyc
o

_b�J�@s�ddlZddlZddlTddlmZmZddlmZddlm	Z	ddl
mZGdd�dej�Z
Gd	d
�d
�ZGdd�de	�ZGd
d�d�ZedkrXddlmZedddd�dSdS)�N)�*)�Frame�	Scrollbar)�macosx)�ScrolledList)�ListedToplevelc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�IdbcCs||_tj�|�dS�N)�gui�bdb�Bdb�__init__)�selfr
�r�9/usr/local/python-3.10/lib/python3.10/idlelib/debugger.pyr
szIdb.__init__cCsJ|�|�r|��dS|�|�}z
|j�||�WdSty$YdSwr	)�in_rpc_code�set_step�_Idb__frame2messager
�interactionZTclError)r�frame�messagerrr�	user_lines

�z
Idb.user_linecCs4|�|�r|��dS|�|�}|j�|||�dSr	)rrrr
r)rr�inforrrr�user_exceptions


zIdb.user_exceptioncCs>|jj�d�r	dS|j}|jj}d|vrd|vrdS|�|�S)Nzrpc.pyT�idlelibZdebuggerF)�f_code�co_filename�count�f_backr)rrZ
prev_frameZ	prev_namerrrr#s
zIdb.in_rpc_codecCsF|j}|j}|j}tj�|�}d||f}|jdkr!d||jf}|S)Nz%s:%s�?z%s: %s())rr�f_lineno�os�path�basename�co_name)rr�code�filename�linenor#rrrrZ__frame2message/s
zIdb.__frame2messageN)�__name__�
__module__�__qualname__r
rrrrrrrrrs
rc@s�eZdZdZZZZd1dd�Zdd�Zd1dd�Z	dd	�Z
d1d
d�Zdd
�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�ZdZdd�Zdd�Zd d!�ZdZdZd"d#�Zd$d%�Zd2d'd(�Zd)d*�Zd+d,�Zd-d.�Zd/d0�Z dS)3�DebuggerNcCs:|durt|�}||_||_d|_|��d|_d|_dS�Nr)r�pyshell�idbr�make_gui�interacting�
nesting_level)rr-r.rrrr
>s
zDebugger.__init__csR�jdkr����j�d��fdd��dSz
d�_�jj��Wd�_Sd�_w)Nr�dcs
�j��Sr	)�runr��argsrrr�<lambda>hs
zDebugger.run.<locals>.<lambda>�)r1�
abort_loop�rootZafterr0r.r3)rr5rr4rr3Hs
zDebugger.runcCsbz|��Wn	tyYnw|jr|j��dS|jr%|j��d|_|j��|j�	�dSr	)
�quit�	Exceptionr0�topZbell�stackviewer�closer-Zclose_debugger�destroy�r�eventrrrr>ps�

zDebugger.closecCs>|j}|j|_|j|_}t|�|_}|j�d�|j�d�|�d|j�|j�	d|j�t
|�|_}|jjdd�g|_
}t|d|jd�|_}|�|�t|d	|jd�|_}|�|�t|d
|jd�|_}|�|�t|d|jd�|_}|�|�t|d|jd�|_}|�|�|D]}|jd
d�|jdd�q�t
|�|_}|jjdd�|js�t|�|j_|j�d�t|d|j |jd�|_!|j!j"ddd�|j#s�t|�|j_#t|d|j$|j#d�|_%|j%j"ddd�|j&s�t|�|j_&|j&�d�t|d|j'|j&d�|_(|j(j"ddd�|j)�st|�|j_)t|d|j*|j)d�|_+|j+j"ddd�t,|dd�|_-|j-jdd�t,|dd�|_.|j.jddd�|j.�/d�|_0t
|dd�|_1|j1jddd�t
|�|_2|j2jddd�t
|dd�|_3|j3jddd�|j�4��r�|� �|j&�4��r�|�'�|j)�4��r�|�*�dSdS)Nz
Debug ControlZDebugZWM_DELETE_WINDOWz<Escape>�w)�anchorZGo)�text�commandZStepZOverZOutZQuit�disabled��state�left)�sider7ZStack)rDrE�variabler��row�columnZSource�Locals�Globals�x)rC�fill�
background)�height�both��expandrR)5r-�flistr9rr<Zwm_titleZwm_iconnameZwm_protocolr>�bindr�bframe�pack�buttonsZButton�contZbcont�append�stepZbstep�nextZbnext�retZbretr:�	configure�cframe�vstackZ
BooleanVar�	__class__�setZCheckbutton�
show_stackZbstack�grid�vsource�show_sourceZbsource�vlocals�show_localsZblocals�vglobals�show_globalsZbglobals�Label�status�errorZcget�errorbg�fstack�flocals�fglobals�get)rr-r9r<rZZbl�brcrrrr/�s�






�
�
�
�
�zDebugger.make_guic
Csl||_|jj|d�|r<|\}}}z|j}Wnty%dt|�}Ynw|dur9z
d|t|�f}WnYd}nd}d}|j}|jj||d�|j}	|	r`|j	�
|j|�\}
}|	�|
|�|�d�|j
��rn|��|jD]}|jdd	�qq|j��|jd7_|jj�d
d�|jd8_|jD]}|jdd	�q�|jjdd�|jjd|jd�d|_dS)
N�rDz%sz%s: %sZyellow�)rDrSr7ZnormalrGZvwait�::idledebugwaitrF)rrprbr(�AttributeError�strrrrqr=r.�	get_stack�
load_stack�show_variablesrirv�sync_source_liner\r<�wakeupr1r9�tk�call)
rrrr�type�value�tbZm1�bg�sv�stack�irwrrrr�sJ

�





zDebugger.interactioncCs^|j}|sdS|�|�\}}|dd�|dd�dkr+tj�|�r-|j�||�dSdSdS)Nr7���z<>)r�_Debugger__frame2fileliner!r"�existsrXZgotofileline)rrr&r'rrrr��s(�zDebugger.sync_source_linecCs|j}|j}|j}||fSr	)rrr )rrr%r&r'rrrZ__frame2filelineszDebugger.__frame2filelinecC�|j��|��dSr	)r.Zset_continuer8�rrrrr]�
z
Debugger.contcCr�r	)r.rr8r�rrrr_r�z
Debugger.stepcC�|j�|j�|��dSr	)r.Zset_nextrr8r�rrrr`�z
Debugger.nextcCr�r	)r.Z
set_returnrr8r�rrrrar�zDebugger.retcCr�r	)r.Zset_quitr8r�rrrr:r�z
Debugger.quitcCs|jj�ddd�dS)Nrfrz�1)r9r�r�r�rrrr8szDebugger.abort_loopcCs�|js*|j��r*t|j|j|�|_}|jr(|j�|jd�\}}|�	||�dSdS|j}|r;|j��s;d|_|�
�d|jd<dS)Nr7rT)r=rdrv�StackViewerrsrXrr.r}r~r>)rr�r�r�rrrrg$s�zDebugger.show_stackcCs|j��r|��dSdSr	)rirvr�r�rrrrj1s
�zDebugger.show_sourcecCs|d|_|��dSr,)rr)rZ	stackitemrrr�
show_frame5r�zDebugger.show_framecC�L|j}|j��r|st|jd�|_n|r d|_|��d|jd<|��dS)NrOr7rT)�localsviewerrkrv�NamespaceViewerrtr>r)r�lvrrrrl<�
�
zDebugger.show_localscCr�)NrPr7rT)�
globalsviewerrmrvr�rur>r)r�gvrrrrnHr�zDebugger.show_globalsrcCsx|j}|j}|j}|sd}}n|j}|j}|r |r ||ur d}|r,|�|||jjj�|r:|�|||jjj�dSdSr	)	r�r�r�f_locals�	f_globals�	load_dictr-ZinterpZrpcclt)r�forcer�r�rZldictZgdictrrrrTs
�zDebugger.show_variablescC�|j�||�dSr	)r.Z	set_break�rr&r'rrr�set_breakpoint_hered�zDebugger.set_breakpoint_herecCr�r	)r.Zclear_breakr�rrr�clear_breakpoint_heregr�zDebugger.clear_breakpoint_herecCs|j�|�dSr	)r.Zclear_all_file_breaks)rr&rrr�clear_file_breaksjszDebugger.clear_file_breaksc	CsJ|jjjD]}|jj}z|jD]}|�||�qWqty"YqwdS)z=Load PyShellEditorWindow breakpoints into subprocess debuggerN)r-rXZinversedict�ior&Zbreakpointsr�r{)rZeditwinr&r'rrr�load_breakpointsms
���zDebugger.load_breakpointsr	)r)!r(r)r*rdrirkrmr
r3r>r/rr�r�r]r_r`rar:r8r=rgrjr�r�r�rlrnrr�r�r�r�rrrrr+:s8


(
K1

r+c@sVeZdZdd�Zddd�Zdd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�ZdS)r�cCs<t��rt�||�ntj||dd�||_||_g|_dS)N�P)�width)rZisAquaTkrr
rXr
r�)r�masterrXr
rrrr
ys
zStackViewer.__init__Nc
Cs�||_|��tt|��D]N}||\}}z|jd}Wnd}Y|j}|j}|j}	ddl}
|
�	||�}|�
�}|	dvrFd|||f}nd||	||f}||krVd|}|�|�q
|durg|�|�dSdS)Nr(rr)rryNz%s, line %d: %sz%s.%s(), line %d: %sz> )
r��clear�range�lenr�rrr$�	linecache�getline�stripr^�select)
rr��indexr�rr'�modnamer%r&�funcnamer�Z
sourceline�itemrrrr~�s2��zStackViewer.load_stackcCs|jr	t�||�SdS��override base methodN)r�r�popup_eventr@rrrr��s�zStackViewer.popup_eventcCs*|j}|jd|jd�|jd|jd�dS)r�zGo to source line)�labelrEzShow stack frameN)�menuZadd_command�goto_source_line�show_stack_frame)rr�rrr�	fill_menu�s�
�zStackViewer.fill_menucCs:d|kr
t|j�krndS|j�|j|�dSdS)r�rN)r�r�r
r��rr�rrr�	on_select�s �zStackViewer.on_selectcCs|�|�dSr�)rjr�rrr�	on_double�szStackViewer.on_doublecCs|j�d�}|�|�dS)N�active)�listboxr�rjr�rrrr��szStackViewer.goto_source_linecCsF|j�d�}d|krt|j�kr!ndS|j�|j|�dSdS)Nr�r)r�r�r�r�r
r�r�rrrr��s �zStackViewer.show_stack_framecCsnd|krt|j�ksdSdS|j|\}}|j}|j}tj�|�r3|j�|�}|r5|�	|�dSdSdSr,)
r�r�rrr!r"�isfilerX�openZgotoline)rr�rr'r%r&Zeditrrrrj�s��zStackViewer.show_sourcer	)r(r)r*r
r~r�r�r�r�r�r�rjrrrrr�ws
r�c@s,eZdZd
dd�ZdZddd�Zdd	�ZdS)r�NcCs d}d}|rdt|�}||_||_ddl}|��|_d|j_d|j_t|�|_	}|j	j
ddd�t||dd	d
�|_|jj
dd�t
|d
d�|_}|j
ddd�t|tdtd|��dd||fd�|_}	|	j
dddd�|	j|d<|j|	d<t|	�|_}
|	jdd|
dd�|_|�|�dS)Nr�(��<r7rUrV�Zgroove)rD�borderwidthZreliefrQ)rR�vbar)�name�right�y)rJrR�,)rT�scrollregionrI)rJrRrWrEZyscrollcommand�nw)ZwindowrC)r�r��title�reprlib�Repr�repr�	maxstring�maxotherrrr[ror�rr�ZCanvas�min�max�canvasZyviewrf�subframeZ
create_windowZsfidr�)rr�r��dictr�rTr�rr�r�r�rrrr
�s4

�

zNamespaceViewer.__init__r�rcCs^||jur	|s	dS|j}|j}t|j���D]}|��qd|_|s0t|dd�}|jddd�nH|�	�}t
|�}	d}
|	D];}||}|j�|�}
|rP|
dd�}
t||d�}|j|
ddd�t|ddd	�}|�
d|
�|j|
ddd�|
d}
q<||_|��|��}|��}|j}dd||f|jd
<|dkr�d|d<|jdd
�dS||d<|jdd
�dS)N�NonerxrrLr7r�r�)rMrNZsticky)r�r�r�r�rT)rW)r�r�r�list�children�valuesr?rorh�keys�sortedr�ZEntry�insertZupdate_idletasksZwinfo_reqwidthZwinfo_reqheightr�r[)rr�r�Z
rpc_clientr�r�c�lZ	keys_list�namesrMr�r�Zsvaluer�rTr�rrrr��sF


zNamespaceViewer.load_dictcCs|j��dSr	)rr?r�rrrr>szNamespaceViewer.closer	)rN)r(r)r*r
r�r�r>rrrrr��s


6r��__main__)�mainzidlelib.idle_test.test_debuggerr�F)�	verbosity�exit)rr!�tkinterZtkinter.ttkrrrrZidlelib.scrolledlistrZidlelib.windowrrrr+r�r�r(Zunittestr�rrrr�<module>s".?SX�
© 2025 GrazzMean