Viewing File: /opt/alt/python35/lib64/python3.5/idlelib/__pycache__/RemoteDebugger.cpython-35.opt-2.pyc



].@s#ddlZddlmZdZdadZiZiZiZiZ	ddZ
ddZGd	d
d
ZGdddZ
d
dZGdddZGdddZGdddZGdddZGdddZddZddZddZdd ZdS)!N)Debuggeridb_adapterZgui_adaptercCst|}|t|<|S)N)id
frametable)framefidr3/opt/alt/python35/lib64/python3.5/RemoteDebugger.py
wrap_frame(s
r
cCsO|dkrdS|d}t|}|t|<|d|d|f}|SdS)Nr)rtracebacktable)info	tracebackZtraceback_id
modified_inforrr		wrap_info-s

rc@s+eZdZddZdddZdS)GUIProxycCs||_||_dS)N)connoid)selfrgui_adap_oidrrr	__init__;s	zGUIProxy.__init__NcCs5|jj|jd|t|t|fidS)Ninteraction)r
remotecallrr
r)rmessagerrrrr	r?szGUIProxy.interaction)__name__
__module____qualname__rrrrrr	r9src@seZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZddZ
ddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)S)*
IdbAdaptercCs
||_dS)N)idb)rrrrr	rHszIdbAdapter.__init__cCs|jjdS)N)rset_step)rrrr	r MszIdbAdapter.set_stepcCs|jjdS)N)rset_quit)rrrr	r!PszIdbAdapter.set_quitcCs|jjdS)N)rset_continue)rrrr	r"SszIdbAdapter.set_continuecCst|}|jj|dS)N)rrset_next)rrrrrr	r#Vs
zIdbAdapter.set_nextcCst|}|jj|dS)N)rr
set_return)rrrrrr	r$Zs
zIdbAdapter.set_returncCsat|}|dkrd}n
t|}|jj||\}}dd|D}||fS)NcSs(g|]\}}t||fqSr)r
).0Zframe2krrr	
<listcomp>es	z(IdbAdapter.get_stack.<locals>.<listcomp>)rr
r	get_stack)rrtbidrtbstackirrr	r(^s
	
zIdbAdapter.get_stackcCs&ddl}|jj||jdS)Nr)__main__rrun__dict__)rcmdr-rrr	r.hszIdbAdapter.runcCs|jj||}|S)N)r	set_break)rfilenamelinenomsgrrr	r1lszIdbAdapter.set_breakcCs|jj||}|S)N)rclear_break)rr2r3r4rrr	r5pszIdbAdapter.clear_breakcCs|jj|}|S)N)rclear_all_file_breaks)rr2r4rrr	r6tsz IdbAdapter.clear_all_file_breakscCst|}t||S)N)rgetattr)rrnamerrrr	
frame_attrzs
zIdbAdapter.frame_attrcCs-t|}|j}t|}|t|<|S)N)r	f_globalsr	dicttable)rrrdictdidrrr	
frame_globals~s

	
zIdbAdapter.frame_globalscCs-t|}|j}t|}|t|<|S)N)rf_localsrr;)rrrr<r=rrr	frame_localss

	
zIdbAdapter.frame_localscCs-t|}|j}t|}|t|<|S)N)rf_coder	codetable)rrrcodecidrrr	
frame_codes

	
zIdbAdapter.frame_codecCst|}|jS)N)rBco_name)rrDrCrrr		code_names
zIdbAdapter.code_namecCst|}|jS)N)rBco_filename)rrDrCrrr	
code_filenames
zIdbAdapter.code_filenamecCstddS)Nz"dict_keys not public or pickleable)NotImplemented)rr=rrr		dict_keysszIdbAdapter.dict_keyscCst|}t|jS)N)r;listkeys)rr=r<rrr	dict_keys_lists
zIdbAdapter.dict_keys_listcCs$t|}||}t|}|S)N)r;repr)rr=keyr<valuerrr		dict_items

zIdbAdapter.dict_itemN)rrrrr r!r"r#r$r(r.r1r5r6r9r>r@rErGrIrKrNrRrrrr	rFs(
	rcCs>t||}tj|}t|}|jt|tS)N)rrZIdbrregisteridb_adap_oid)Z
rpchandlerrZ	gui_proxyrZidb_adaprrr	start_debuggers

rUc@sXeZdZddZddZddZddZd	d
ZddZd
S)
FrameProxycCs(||_||_d|_i|_dS)Nr)_conn_fid_oid
_dictcache)rrrrrr	rs			zFrameProxy.__init__cCs|dddkr"t||dkr8|jS|dkrN|jS|dkrd|jS|jj|jd|j|fiS)Nr_rAr:r?r9)AttributeError_get_f_code_get_f_globals
_get_f_localsrWrrYrX)rr8rrr	__getattr__s


zFrameProxy.__getattr__cCs:|jj|jd|jfi}t|j|j|S)NrE)rWrrYrX	CodeProxy)rrDrrr	r]s$zFrameProxy._get_f_codecCs1|jj|jd|jfi}|j|S)Nr>)rWrrYrX_get_dict_proxy)rr=rrr	r^szFrameProxy._get_f_globalscCs1|jj|jd|jfi}|j|S)Nr@)rWrrYrXrb)rr=rrr	r_szFrameProxy._get_f_localscCsC||jkr|j|St|j|j|}||j|<|S)N)rZ	DictProxyrWrY)rr=Zdprrr	rbs

zFrameProxy._get_dict_proxyN)	rrrrr`r]r^r_rbrrrr	rVsrVc@s(eZdZddZddZdS)racCs||_||_||_dS)N)rWrY_cid)rrrrDrrr	rs		zCodeProxy.__init__cCs`|dkr.|jj|jd|jfiS|dkr\|jj|jd|jfiSdS)NrFrGrHrI)rWrrYrd)rr8rrr	r`szCodeProxy.__getattr__N)rrrrr`rrrr	rasrac@s@eZdZddZddZddZddZd	S)
rccCs||_||_||_dS)N)rWrY_did)rrrr=rrr	rs		zDictProxy.__init__cCs"|jj|jd|jfiS)NrN)rWrrYre)rrrr	rMszDictProxy.keyscCs%|jj|jd|j|fiS)NrR)rWrrYre)rrPrrr	__getitem__szDictProxy.__getitem__cCst|dS)N)r\)rr8rrr	r`szDictProxy.__getattr__N)rrrrrMrfr`rrrr	rcs	rcc@s(eZdZddZddZdS)
GUIAdaptercCs||_||_dS)N)rgui)rrrhrrr	rs	zGUIAdapter.__init__cCs,t|j|}|jj|||dS)N)rVrrhr)rrrrrrrr	r!szGUIAdapter.interactionN)rrrrrrrrr	rgsrgc@seZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZddZ
ddZdS)IdbProxycCs||_||_||_dS)N)rrshell)rrrjrrrr	r)s		zIdbProxy.__init__cOs"|jj|j|||}|S)N)rrr)rZ
methodnameargskwargsrQrrr	call.sz
IdbProxy.callcCs4|jj|jd|fi}||jj_dS)Nr.)rZ
asyncqueuerrjZinterpZ
active_seq)rr0localsseqrrr	r.4s!zIdbProxy.runcsAjd|j|\}}fdd|D}||fS)Nr(cs.g|]$\}}tj||fqSr)rVr)r%rr&)rrr	r'<s	z&IdbProxy.get_stack.<locals>.<listcomp>)rmrX)rrr)r+r,r)rr	r(9szIdbProxy.get_stackcCs|jddS)Nr")rm)rrrr	r"?szIdbProxy.set_continuecCs|jddS)Nr )rm)rrrr	r BszIdbProxy.set_stepcCs|jd|jdS)Nr#)rmrX)rrrrr	r#EszIdbProxy.set_nextcCs|jd|jdS)Nr$)rmrX)rrrrr	r$HszIdbProxy.set_returncCs|jddS)Nr!)rm)rrrr	r!KszIdbProxy.set_quitcCs|jd||}|S)Nr1)rm)rr2r3r4rrr	r1NszIdbProxy.set_breakcCs|jd||}|S)Nr5)rm)rr2r3r4rrr	r5RszIdbProxy.clear_breakcCs|jd|}|S)Nr6)rm)rr2r4rrr	r6VszIdbProxy.clear_all_file_breaksN)rrrrrmr.r(r"r r#r$r!r1r5r6rrrr	ri'sricCsb|jddtfiat||t}tj||}t||}|jt||S)Nexecstart_the_debugger)rrrTrirrgrS)rpccltZpyshellZ	idb_proxyrhZgui_adaprrr	start_remote_debuggerZsrscCst||jtdS)N)close_subprocess_debugger
unregisterr)rrrrr	close_remote_debuggerrs	
rvcCs|jddtfidS)NrpZstop_the_debugger)rrT)rrrrr	rt~srtcCs|jddtfi}dS)Nrprq)rr)rrZidb_adap_oid_retrrr	restart_subprocess_debuggersrw)typesZidlelibrZ	debuggingrTrrr;rBr
r
rrrrUrVrarcrgrirsrvrtrwrrrr	<module>s,
m*3
Back to Directory File Manager