HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/idlelib/__pycache__/debugger_r.cpython-310.opt-2.pyc
o

�i�/�@s�	ddlZddlZddlmZdZdadZiZiZiZ	iZ
dd�Zdd�ZGd	d
�d
�Z
Gdd�d�Zd
d�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�d�Zdd�Zdd�Zdd�Zdd �Zed!kr}dd"lmZed#d$d%d&�dSdS)'�N)�debugger�idb_adapterZgui_adaptercCst|�}|t|<|S�N)�id�
frametable)�frame�fid�r	�//usr/local/lib/python3.10/idlelib/debugger_r.py�
wrap_frame(srcCs<	|durdS|d}t|�}|t|<|d|d|f}|S)N�r�)r�tracebacktable)�info�	tracebackZtraceback_id�
modified_infor	r	r
�	wrap_info-src@seZdZdd�Zddd�ZdS)�GUIProxycC�||_||_dSr)�conn�oid)�selfr�gui_adap_oidr	r	r
�__init__;�
zGUIProxy.__init__NcCs&|j�|jd|t|�t|�fi�dS)N�interaction)r�
remotecallrrr)r�messagerrr	r	r
r?s�zGUIProxy.interactionr��__name__�
__module__�__qualname__rrr	r	r	r
r9src@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)S)*�
IdbAdaptercCs
||_dSr)�idb)rr#r	r	r
rHs
zIdbAdapter.__init__cC�|j��dSr)r#�set_step�rr	r	r
r%M�zIdbAdapter.set_stepcCr$r)r#�set_quitr&r	r	r
r(Pr'zIdbAdapter.set_quitcCr$r)r#�set_continuer&r	r	r
r)Sr'zIdbAdapter.set_continuecC�t|}|j�|�dSr)rr#�set_next�rrrr	r	r
r+V�zIdbAdapter.set_nextcCr*r)rr#�
set_returnr,r	r	r
r.Zr-zIdbAdapter.set_returncCsFt|}|durd}nt|}|j�||�\}}dd�|D�}||fS)NcSsg|]
\}}t|�|f�qSr	)r)�.0Zframe2�kr	r	r
�
<listcomp>esz(IdbAdapter.get_stack.<locals>.<listcomp>)rrr#�	get_stack)rr�tbidr�tb�stack�ir	r	r
r2^szIdbAdapter.get_stackcCsddl}|j�||j�dS)Nr)�__main__r#�run�__dict__)r�cmdr7r	r	r
r8hszIdbAdapter.runcC�|j�||�}|Sr)r#�	set_break�r�filename�lineno�msgr	r	r
r<l�zIdbAdapter.set_breakcCr;r)r#�clear_breakr=r	r	r
rBprAzIdbAdapter.clear_breakcCs|j�|�}|Sr)r#�clear_all_file_breaks�rr>r@r	r	r
rCt�z IdbAdapter.clear_all_file_breakscCst|}t||�Sr)r�getattr)rr�namerr	r	r
�
frame_attrzs
zIdbAdapter.frame_attrcC�"t|}|j}t|�}|t|<|Sr)r�	f_globalsr�	dicttable�rrr�dict�didr	r	r
�
frame_globals~�
zIdbAdapter.frame_globalscCrIr)r�f_localsrrKrLr	r	r
�frame_locals�rPzIdbAdapter.frame_localscCrIr)r�f_coder�	codetable)rrr�code�cidr	r	r
�
frame_code�rPzIdbAdapter.frame_codecC�t|}|jSr)rT�co_name�rrVrUr	r	r
�	code_name��zIdbAdapter.code_namecCrXr)rT�co_filenamerZr	r	r
�
code_filename�r\zIdbAdapter.code_filenamecCstd��)Nz"dict_keys not public or pickleable)�NotImplementedError�rrNr	r	r
�	dict_keys�szIdbAdapter.dict_keyscCst|}t|���Sr)rK�list�keys)rrNrMr	r	r
�dict_keys_list�szIdbAdapter.dict_keys_listcCst|}||}t�|�}|Sr)rK�reprlib�repr)rrN�keyrM�valuer	r	r
�	dict_item�s
zIdbAdapter.dict_itemN)rr r!rr%r(r)r+r.r2r8r<rBrCrHrOrRrWr[r^rardrir	r	r	r
r"Fs*
	r"cCs.	t||�}t�|�}t|�}|�t|�tSr)rrZIdbr"�register�idb_adap_oid)Z
rpchandlerrZ	gui_proxyr#Zidb_adapr	r	r
�start_debugger�s
	
rlc@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�
FrameProxycCs||_||_d|_i|_dS)Nr)�_conn�_fid�_oid�
_dictcache)rrrr	r	r
r�s
zFrameProxy.__init__cCsb|dd�dkrt|��|dkr|��S|dkr|��S|dkr$|��S|j�|jd|j|fi�S)Nr
�_rSrJrQrH)�AttributeError�_get_f_code�_get_f_globals�
_get_f_localsrnrrpro�rrGr	r	r
�__getattr__�s
�zFrameProxy.__getattr__cCs(|j�|jd|jfi�}t|j|j|�S)NrW)rnrrpro�	CodeProxy)rrVr	r	r
rt�szFrameProxy._get_f_codecC�"|j�|jd|jfi�}|�|�S)NrO�rnrrpro�_get_dict_proxyr`r	r	r
ru���
zFrameProxy._get_f_globalscCrz)NrRr{r`r	r	r
rv�r}zFrameProxy._get_f_localscCs2||jvr
|j|St|j|j|�}||j|<|Sr)rq�	DictProxyrnrp)rrNZdpr	r	r
r|�s



zFrameProxy._get_dict_proxyN)	rr r!rrxrtrurvr|r	r	r	r
rm�srmc@�eZdZdd�Zdd�ZdS)rycC�||_||_||_dSr)rnrp�_cid)rrrrVr	r	r
r��
zCodeProxy.__init__cCsD|dkr|j�|jd|jfi�S|dkr |j�|jd|jfi�SdS)NrYr[r]r^)rnrrpr�rwr	r	r
rx�s���zCodeProxy.__getattr__N)rr r!rrxr	r	r	r
ry�sryc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
r~cCr�r)rnrp�_did)rrrrNr	r	r
rr�zDictProxy.__init__cCs|j�|jd|jfi�S)Nrd�rnrrpr�r&r	r	r
rcs

�zDictProxy.keyscCs|j�|jd|j|fi�S)Nrir�)rrgr	r	r
�__getitem__s
�zDictProxy.__getitem__cCst|��r)rsrwr	r	r
rxszDictProxy.__getattr__N)rr r!rrcr�rxr	r	r	r
r~s
	r~c@r)�
GUIAdaptercCrr)r�gui)rrr�r	r	r
rrzGUIAdapter.__init__cCs t|j|�}|j�|||�dSr)rmrr�r)rrrrrr	r	r
r!szGUIAdapter.interactionNrr	r	r	r
r�sr�c@sleZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�ZdS)�IdbProxycCs||_||_||_dSr)rr�shell)rrr�rr	r	r
r)r�zIdbProxy.__init__cOs|j�|j|||�}|Sr)rrr)rZ
methodname�args�kwargsrhr	r	r
�call.sz
IdbProxy.callcCs$|j�|jd|fi�}||jj_dS)Nr8)rZ
asyncqueuerr�ZinterpZ
active_seq)rr:�locals�seqr	r	r
r84szIdbProxy.runcs.��d|j|�\}}�fdd�|D�}||fS)Nr2cs g|]\}}t�j|�|f�qSr	)rmr)r/rr0r&r	r
r1<s z&IdbProxy.get_stack.<locals>.<listcomp>�r�ro)rrr3r5r6r	r&r
r29szIdbProxy.get_stackcC�|�d�dS)Nr)�r�r&r	r	r
r)?r'zIdbProxy.set_continuecCr�)Nr%r�r&r	r	r
r%Br'zIdbProxy.set_stepcC�|�d|j�dS)Nr+r��rrr	r	r
r+E�zIdbProxy.set_nextcCr�)Nr.r�r�r	r	r
r.Hr�zIdbProxy.set_returncCr�)Nr(r�r&r	r	r
r(Kr'zIdbProxy.set_quitcC�|�d||�}|S)Nr<r�r=r	r	r
r<NrAzIdbProxy.set_breakcCr�)NrBr�r=r	r	r
rBRrAzIdbProxy.clear_breakcCs|�d|�}|S)NrCr�rDr	r	r
rCVrEzIdbProxy.clear_all_file_breaksN)rr r!rr�r8r2r)r%r+r.r(r<rBrCr	r	r	r
r�'sr�cCsF	|�ddtfi�at||t�}t�||�}t||�}|�t|�|S�N�execZstart_the_debugger)rrrkr�rZDebuggerr�rj)�rpccltZpyshellZ	idb_proxyr�Zgui_adapr	r	r
�start_remote_debuggerZs�
r�cCs	t|�|�t�dSr)�close_subprocess_debugger�
unregisterr�r�r	r	r
�close_remote_debuggerrsr�cCs|�ddtfi�dS)Nr�Zstop_the_debugger)rrkr�r	r	r
r�~sr�cCs|�ddtfi�}dSr�)rr)r�Zidb_adap_oid_retr	r	r
�restart_subprocess_debugger�s�r�r7)�mainz!idlelib.idle_test.test_debugger_rrF)�	verbosity�exit)re�typesZidlelibrZ	debuggingrkrrrKrTrrrrr"rlrmryr~r�r�r�r�r�r�rZunittestr�r	r	r	r
�<module>s:
m*3�