uawdijnntqw1x1x1
IP : 216.73.216.139
Hostname : altar28.supremepanel28.com
Kernel : Linux altar28.supremepanel28.com 4.18.0-553.83.1.lve.el8.x86_64 #1 SMP Wed Nov 12 10:04:12 UTC 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
.
/
..
/
lib64
/
sse2
/
..
/
python3.11
/
..
/
python2.7
/
idlelib
/
RemoteDebugger.pyc
/
/
� {fc@sdZddlZddlmZdZdadZiZiZiZ iZ d�Zd�Zd dd ��YZ ddd��YZd �Zddd��YZddd��YZdd d��YZdd!d��YZdd"d��YZd�Zd�Zd�Zd�ZdS(#s�Support for remote Python debugging. Some ASCII art to describe the structure: IN PYTHON SUBPROCESS # IN IDLE PROCESS # # oid='gui_adapter' +----------+ # +------------+ +-----+ | GUIProxy |--remote#call-->| GUIAdapter |--calls-->| GUI | +-----+--calls-->+----------+ # +------------+ +-----+ | Idb | # / +-----+<-calls--+------------+ # +----------+<--calls-/ | IdbAdapter |<--remote#call--| IdbProxy | +------------+ # +----------+ oid='idb_adapter' # The purpose of the Proxy and Adapter classes is to translate certain arguments and return values that cannot be transported through the RPC barrier, in particular frame and traceback objects. i����N(tDebuggeritidb_adaptertgui_adaptercCst|�}|t|<|S(N(tidt frametable(tframetfid((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt wrap_frame(s cCsg|dkrdS|d}t|tj�s2t�t|�}|t|<|d|d|f}|SdS(s0replace info[2], a traceback instance, by its IDiiiN(tNonet isinstancettypest TracebackTypetAssertionErrorRttracebacktable(tinfot tracebackttraceback_idt modified_info((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt wrap_info-s tGUIProxycBseZd�Zdd�ZRS(cCs||_||_dS(N(tconntoid(tselfRtgui_adap_oid((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt__init__;s cCs5|jj|jd|t|�t|�fi�dS(Ntinteraction(Rt remotecallRRR(RtmessageRR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR?sN(t__name__t __module__RRR(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR9s t IdbAdaptercBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z d �Zd �Zd�Z d�Zd �Zd�Zd�Zd�Zd�Zd�ZRS(cCs ||_dS(N(tidb(RR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRHscCs|jj�dS(N(Rtset_step(R((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR MscCs|jj�dS(N(Rtset_quit(R((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR!PscCs|jj�dS(N(Rtset_continue(R((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR"SscCst|}|jj|�dS(N(RRtset_next(RRR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR#Vs cCst|}|jj|�dS(N(RRt set_return(RRR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR$Zs c Csyt|}|dkrd}n t|}|jj||�\}}g|D]\}}t|�|f^qK}||fS(N(RRR Rt get_stackR( RRttbidRttbtstacktitframe2tk((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR%^s +cCs&ddl}|jj||j�dS(Ni����(t__main__Rtrunt__dict__(RtcmdR,((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR-kscCs|jj||�}|S(N(Rt set_break(Rtfilenametlinenotmsg((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR0oscCs|jj||�}|S(N(Rtclear_break(RR1R2R3((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR4sscCs|jj|�}|S(N(Rtclear_all_file_breaks(RR1R3((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR5wscCst|}t||�S(N(Rtgetattr(RRtnameR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt frame_attr}s cCs-t|}|j}t|�}|t|<|S(N(Rt f_globalsRt dicttable(RRRtdicttdid((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt frame_globals�s cCs-t|}|j}t|�}|t|<|S(N(Rtf_localsRR:(RRRR;R<((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pytframe_locals�s cCs-t|}|j}t|�}|t|<|S(N(Rtf_codeRt codetable(RRRtcodetcid((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt frame_code�s cCst|}|jS(N(RAtco_name(RRCRB((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt code_name�s cCst|}|jS(N(RAtco_filename(RRCRB((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt code_filename�s cCst|}|j�S(N(R:tkeys(RR<R;((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt dict_keys�s cCs$t|}||}t|�}|S(N(R:trepr(RR<tkeyR;tvalue((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt dict_item�s (RRRR R!R"R#R$R%R-R0R4R5R8R=R?RDRFRHRJRN(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRFs& cCs>t||�}tj|�}t|�}|jt|�tS(s|Start the debugger and its RPC link in the Python subprocess Start the subprocess side of the split debugger and set up that side of the RPC link by instantiating the GUIProxy, Idb debugger, and IdbAdapter objects and linking them together. Register the IdbAdapter with the RPCServer to handle RPC requests from the split debugger GUI via the IdbProxy. (RRtIdbRtregistertidb_adap_oid(t rpchandlerRt gui_proxyRtidb_adap((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pytstart_debugger�s t FrameProxycBs>eZd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs(||_||_d|_i|_dS(NR(t_connt_fidt_oidt _dictcache(RRR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR�s cCs�|d dkrt|�n|dkr2|j�S|dkrH|j�S|dkr^|j�S|jj|jd|j|fi�S(Nit_R@R9R>R8(tAttributeErrort_get_f_codet_get_f_globalst _get_f_localsRWRRYRX(RR7((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt__getattr__�s cCs:|jj|jd|jfi�}t|j|j|�S(NRD(RWRRYRXt CodeProxy(RRC((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR]�s$cCs1|jj|jd|jfi�}|j|�S(NR=(RWRRYRXt_get_dict_proxy(RR<((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR^�scCs1|jj|jd|jfi�}|j|�S(NR?(RWRRYRXRb(RR<((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR_�scCsC||jkr|j|St|j|j|�}||j|<|S(N(RZt DictProxyRWRY(RR<tdp((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRb�s (RRRR`R]R^R_Rb(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRV�s RacBseZd�Zd�ZRS(cCs||_||_||_dS(N(RWRYt_cid(RRRRC((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR�s cCs`|dkr.|jj|jd|jfi�S|dkr\|jj|jd|jfi�SdS(NRERFRGRH(RWRRYRe(RR7((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR`�s(RRRR`(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRa�s RccBs,eZd�Zd�Zd�Zd�ZRS(cCs||_||_||_dS(N(RWRYt_did(RRRR<((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRs cCs"|jj|jd|jfi�S(NRJ(RWRRYRf(R((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRIscCs%|jj|jd|j|fi�S(NRN(RWRRYRf(RRL((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt__getitem__ scCs t|�dS(N(R\(RR7((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR` s(RRRRIRgR`(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRc�s t GUIAdaptercBseZd�Zd�ZRS(cCs||_||_dS(N(Rtgui(RRRi((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRs cCs,t|j|�}|jj|||�dS(N(RVRRiR(RRRRR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRs(RRRR(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRhs tIdbProxycBsteZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z d �Zd �Zd�Z RS(cCs||_||_||_dS(N(RRtshell(RRRkR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR s cOs"|jj|j|||�}|S(N(RRR(Rt methodnametargstkwargsRM((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pytcall%scCs4|jj|jd|fi�}||jj_dS(NR-(Rt asyncqueueRRktinterpt active_seq(RR/tlocalstseq((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR-+s!cCsY|jd|j|�\}}g|D]$\}}t|j|�|f^q%}||fS(NR%(RoRXRVR(RRR&R(R)RR+((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR%0s1cCs|jd�dS(NR"(Ro(R((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR"6scCs|jd�dS(NR (Ro(R((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR 9scCs|jd|j�dS(NR#(RoRX(RR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR#<scCs|jd|j�dS(NR$(RoRX(RR((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR$?scCs|jd�dS(NR!(Ro(R((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR!BscCs|jd||�}|S(NR0(Ro(RR1R2R3((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR0EscCs|jd||�}|S(NR4(Ro(RR1R2R3((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR4IscCs|jd|�}|S(NR5(Ro(RR1R3((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR5Ms(RRRRoR-R%R"R R#R$R!R0R4R5(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyRjs cCsb|jddtfi�at||t�}tj||�}t||�}|jt|�|S(s]Start the subprocess debugger, initialize the debugger GUI and RPC link Request the RPCServer start the Python subprocess debugger and link. Set up the Idle side of the split debugger by instantiating the IdbProxy, debugger GUI, and debugger GUIAdapter objects and linking them together. Register the GUIAdapter with the RPCClient to handle debugger GUI interaction requests coming from the subprocess debugger via the GUIProxy. The IdbAdapter will pass execution and environment requests coming from the Idle debugger GUI to the subprocess debugger via the IdbProxy. texectstart_the_debugger(RRRQRjRRhRP(trpcclttpyshellt idb_proxyRitgui_adap((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pytstart_remote_debuggerQscCst|�|jt�dS(s]Shut down subprocess debugger and Idle side of debugger RPC link Request that the RPCServer shut down the subprocess debugger and link. Unregister the GUIAdapter, which will cause a GC on the Idle process debugger and RPC link objects. (The second reference to the debugger GUI is deleted in PyShell.close_remote_debugger().) N(tclose_subprocess_debuggert unregisterR(Rw((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pytclose_remote_debuggeris cCs|jddtfi�dS(NRutstop_the_debugger(RRQ(Rw((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyR|uscCs7|jddtfi�}|tks3td��dS(NRuRvs Idb restarted with different oid(RRRQR(Rwtidb_adap_oid_ret((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pytrestart_subprocess_debuggerxs((((((((t__doc__R tidlelibRt debuggingRQRRR:RAR RRRRRURVRaRcRhRjR{R~R|R�(((s./usr/lib64/python2.7/idlelib/RemoteDebugger.pyt<module>s. i *3
/home/./../lib64/sse2/../python3.11/../python2.7/idlelib/RemoteDebugger.pyc