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



]:[@sddlZddlZddlZddlmZdddgZGdddeZGdddZdd	Z	Gd
ddZ
ddZd
dZGdddeZ
ddZddZddZdS)N)CO_GENERATORBdbQuitBdb
Breakpointc@seZdZdS)rN)__name__
__module____qualname__r	r	(/opt/alt/python35/lib64/python3.5/bdb.pyr
sc@s,eZdZdddZddZddZdd	Zd
dZdd
ZddZ	ddZ
ddZddZddZ
ddZddZddZddZd d!Zd"d#Zd$d%d&Zdd'd(Zd)d*Zd+d,Zd-d.Zdd/d0Zd1d2Zd3d4Zd5ddd6d7Zd8d9Zd:d;Zd<d=Zd>d?Z d@dAZ!dBdCZ"dDdEZ#dFdGZ$dHdIZ%dJdKZ&dLdMZ'dNdOdPZ(dddQdRZ)dddSdTZ*dUdVZ+dWdXZ,dS)YrNcCs:|rt|nd|_i|_i|_d|_dS)N)setskipbreaksfncacheframe_returning)selfrr	r	r
__init__s		zBdb.__init__cCso|d|dddkr"|S|jj|}|sktjj|}tjj|}||j|<|S)N<>)rgetospathabspathnormcase)rfilenamecanonicr	r	r
rs
zBdb.canoniccCs3ddl}|jd|_|jdddS)Nr)	linecache
checkcachebotframe
_set_stopinfo)rrr	r	r
reset&s
	z	Bdb.resetcCs|jr
dS|dkr&|j|S|dkrB|j||S|dkr^|j||S|dkrz|j||S|dkr|jS|dkr|jS|dkr|jStdt||jS)	Nlinecallreturn	exceptionZc_callZc_exceptionZc_returnz*bdb.Bdb.dispatch: unknown debugging event:)quitting
dispatch_line
dispatch_calldispatch_returndispatch_exceptiontrace_dispatchprintrepr)rframeeventargr	r	r
r+,s$	
zBdb.trace_dispatchcCsA|j|s|j|r:|j||jr:t|jS)N)	stop_here
break_here	user_liner&rr+)rr.r	r	r
r'@s

	zBdb.dispatch_linecCs|jdkr"|j|_|jS|j|p=|j|sDdS|jrd|jjt@rd|jS|j	|||j
rt|jS)N)rf_backr+r1break_anywhere	stopframef_codeco_flagsr	user_callr&r)rr.r0r	r	r
r(Fs	zBdb.dispatch_callcCs|j|s||jkr|jr>|jjt@r>|jSz||_|j||Wdd|_X|j	rwt
|j|kr|jdkr|jdd|jS)Nrr)
r1returnframer6r7r8rr+ruser_returnr&r
stoplinenor )rr.r0r	r	r
r)Vs	
	zBdb.dispatch_returncCs|j|ra|jjt@o<|dtko<|ddks|j|||jrtn`|jr||jk	r|jjjt@r|dtt	fkr|j|||jrt|j
S)Nr)r1r7r8r
StopIterationuser_exceptionr&rr6
GeneratorExitr+)rr.r0r	r	r
r*fs 			zBdb.dispatch_exceptioncCs.x'|jD]}tj||r
dSq
WdS)NTF)rfnmatch)rmodule_namepatternr	r	r
is_skipped_moduleszBdb.is_skipped_modulecCsk|jr(|j|jjdr(dS||jkrZ|jdkrJdS|j|jkS|jsgdSdS)NrFrTr)rrD	f_globalsrr6r<f_lineno)rr.r	r	r
r1s		z
Bdb.stop_herecCs|j|jj}||jkr(dS|j}||j|krg|jj}||j|krgdSt|||\}}|r|j|_|r|j	r|j
t|jdSdSdS)NFT)rr7co_filenamer
rFco_firstlineno	effectivenumberZ	currentbp	temporarydo_clearstr)rr.rlinenobpflagr	r	r
r2s	zBdb.break_herecCstddS)Nz)subclass of bdb must implement do_clear())NotImplementedError)rr0r	r	r
rLszBdb.do_clearcCs|j|jj|jkS)N)rr7rGr
)rr.r	r	r
r5szBdb.break_anywherecCsdS)Nr	)rr.Z
argument_listr	r	r
r9sz
Bdb.user_callcCsdS)Nr	)rr.r	r	r
r3sz
Bdb.user_linecCsdS)Nr	)rr.Zreturn_valuer	r	r
r;szBdb.user_returncCsdS)Nr	)rr.exc_infor	r	r
r?szBdb.user_exceptionrcCs(||_||_d|_||_dS)NF)r6r:r&r<)rr6r:r<r	r	r
r s			zBdb._set_stopinfocCs0|dkr|jd}|j|||dS)Nr)rFr )rr.rNr	r	r
	set_untils
z
Bdb.set_untilcCsE|jr1|jj}|r1|jr1|j|_|jdddS)N)rr4f_tracer+r )rZcaller_framer	r	r
set_steps
	zBdb.set_stepcCs|j|ddS)N)r )rr.r	r	r
set_nextszBdb.set_nextcCs=|jjt@r&|j|ddn|j|j|dS)Nrr)r7r8rr r4)rr.r	r	r

set_returnszBdb.set_returncCsn|dkrtjj}|jx(|rO|j|_||_|j}q(W|jtj|jdS)N)	sys	_getframer4r!r+rTrrUsettrace)rr.r	r	r
	set_traces
		

z
Bdb.set_tracecCsj|j|jdd|jsftjdtjj}x(|re||jk	re|`|j}q>WdS)Nrr)r rr
rXrZrYr4rT)rr.r	r	r
set_continues	
zBdb.set_continuecCs/|j|_d|_d|_tjddS)NT)rr6r:r&rXrZ)rr	r	r
set_quits		zBdb.set_quitFc
Cs|j|}ddl}|j||}|sAd||fS|jj|g}||kro|j|t|||||}	dS)NrzLine %s:%d does not exist)rrgetliner

setdefaultappendr)
rrrNrKcondfuncnamerr"listrOr	r	r
	set_breaks
z
Bdb.set_breakcCsD||ftjkr)|j|j||j|s@|j|=dS)N)rbplistr
remove)rrrNr	r	r

_prune_breaks!s
zBdb._prune_breakscCs|j|}||jkr&d|S||j|krGd||fSx/tj||fddD]}|jqeW|j||dS)NzThere are no breakpoints in %szThere is no breakpoint at %s:%d)rr
rredeleteMerg)rrrNrOr	r	r
clear_break's$zBdb.clear_breakcCsiy|j|}Wn/tk
rD}zt|SWYdd}~XnX|j|j|j|jdS)N)get_bpbynumber
ValueErrorrMrhrgfiler")rr0rOerrr	r	r
clear_bpbynumber3s
zBdb.clear_bpbynumbercCsz|j|}||jkr&d|SxC|j|D]4}tj||f}x|D]}|jqTWq4W|j|=dS)NzThere are no breakpoints in %s)rr
rrerh)rrr"ZblistrOr	r	r
clear_all_file_breaks;s
zBdb.clear_all_file_breakscCs>|js
dSx!tjD]}|r|jqWi|_dS)NzThere are no breakpoints)r
r
bpbynumberrh)rrOr	r	r
clear_all_breaksEs	zBdb.clear_all_breakscCs|stdyt|}Wn"tk
rFtd|YnXytj|}Wn"tk
r|td|YnX|dkrtd||S)NzBreakpoint number expectedz Non-numeric breakpoint number %sz!Breakpoint number %d out of rangezBreakpoint %d already deleted)rkintrrp
IndexError)rr0rJrOr	r	r
rjMs

zBdb.get_bpbynumbercCs/|j|}||jko.||j|kS)N)rr
)rrrNr	r	r
	get_break\sz
Bdb.get_breakcCsH|j|}||jkrD||j|krDtj||fpGgS)N)rr
rre)rrrNr	r	r

get_breaksaszBdb.get_breakscCs1|j|}||jkr)|j|SgSdS)N)rr
)rrr	r	r
get_file_breaksgszBdb.get_file_breakscCs|jS)N)r
)rr	r	r
get_all_breaksnszBdb.get_all_breakscCsg}|r$|j|kr$|j}x?|dk	re|j||jf||jkrYP|j}q'W|jtdt|d}x2|dk	r|j|j|j	f|j}qW|dkrtdt|d}||fS)Nrr)
tb_frametb_nextr`rFrr4reversemaxlen	tb_lineno)rftstackir	r	r
	get_stackts 	


z
Bdb.get_stackz: cCs,ddl}ddl}|\}}|j|jj}d||f}|jjrh||jj7}n
|d7}d|jkr|jd}	nd}	|	r||j|	7}n
|d7}d|jkr|jd}
|d7}||j|
7}|j|||j	}|r(|||j
7}|S)Nrz%s(%r)z<lambda>Z__args__z()Z
__return__z->)rreprlibrr7rGco_namef_localsr-r^rEstrip)rZframe_linenoZlprefixrrr.rNrsargsrvr"r	r	r
format_stack_entrys*



zBdb.format_stack_entrycCs|dkr!ddl}|j}|dkr3|}|jt|tr^t|dd}tj|jz-yt	|||Wnt
k
rYnXWdd|_tjdXdS)Nrz<string>execT)__main____dict__r!
isinstancerMcompilerXrZr+rrr&)rcmdglobalslocalsrr	r	r
runs	

		zBdb.runcCs|dkr!ddl}|j}|dkr3|}|jtj|jz-yt|||SWntk
rxYnXWdd|_tjdXdS)NrT)	rrr!rXrZr+evalrr&)rexprrrrr	r	r
runevals	

		zBdb.runevalcCs|j|||dS)N)r)rrrrr	r	r
runctxsz
Bdb.runctxcOsj|jtj|jd}z,y|||}Wntk
rJYnXWdd|_tjdX|S)NT)r!rXrZr+rr&)rfuncrkwdsresr	r	r
runcalls

		zBdb.runcall)-rrrrrr!r+r'r(r)r*rDr1r2rLr5r9r3r;r?r rSrUrVrWr[r\r]rdrgrirnrorqrjrtrurvrwrrrrrrr	r	r	r
rsV


cCstjdS)N)rr[r	r	r	r
r[sr[c@seZdZdZiZdgZdddddZddZdd	Zd
dZ	ddd
Z
ddZddZdS)rrNFcCs||_d|_||_||_||_||_d|_d|_d|_t	j
|_t	j
d7_
|jj
|||f|jkr|j||fj
|n|g|j||f<dS)NTrr)rbfunc_first_executable_linerlr"rKraenabledignorehitsrnextrJrpr`re)rrlr"rKrarbr	r	r
rs									zBreakpoint.__init__cCsQ|j|jf}d|j|j<|j|j||j|sM|j|=dS)N)rlr"rprJrerf)rindexr	r	r
rh	s

zBreakpoint.deleteMecCs
d|_dS)NT)r)rr	r	r
enableszBreakpoint.enablecCs
d|_dS)NF)r)rr	r	r
disableszBreakpoint.disablecCs/|dkrtj}t|jd|dS)Nrl)rXstdoutr,bpformat)routr	r	r
bpprints	zBreakpoint.bpprintcCs|jrd}nd}|jr.|d}n
|d}d|j||j|jf}|jrt|d|jf7}|jr|d|jf7}|jr|jdkrd	}nd
}|d|j|f7}|S)Nzdel  zkeep zyes  zno   z%-4dbreakpoint   %s at %s:%dz
	stop only if %sz
	ignore next %d hitsrrz"
	breakpoint already hit %d time%s)rKrrJrlr"rarr)rZdispretssr	r	r
rs$			

				zBreakpoint.bpformatcCsd|j|j|jfS)Nzbreakpoint %s at %s:%s)rJrlr")rr	r	r
__str__3szBreakpoint.__str__)
rrrrrerprrhrrrrrr	r	r	r
rs	cCsk|js#|j|jkrdSdS|jj|jkr<dS|jsQ|j|_|j|jkrgdSdS)NFT)rbr"rFr7rr)br.r	r	r

checkfuncname8s		rcCstj||f}x|D]}|js,qt||s>q|jd7_|js|jdkrz|jd8_qq|dfSqyPt|j|j|j	}|r|jdkr|jd8_n
|dfSWq|dfSYqXqWdS)NrrTF)NN)
rrerrrrarrrEr)rlr"r.Z	possiblesrvalr	r	r
rITs*
		
rIc@s@eZdZddZddZddZddZd	S)
TdbcCs,|jj}|sd}td||dS)Nz???z+++ call)r7rr,)rr.rnamer	r	r
r9sz
Tdb.user_callcCszddl}|jj}|s$d}|j|jj}|j||j|j}td||j|d|j	dS)Nrz???z+++:)
rr7rrrGr^rFrEr,r)rr.rrfnr"r	r	r
r3sz
Tdb.user_linecCstd|dS)Nz
+++ return)r,)rr.Zretvalr	r	r
r;szTdb.user_returncCstd||jdS)Nz
+++ exception)r,r\)rr.Z	exc_stuffr	r	r
r?s
zTdb.user_exceptionN)rrrr9r3r;r?r	r	r	r
rsrcCs1td|dt|d}td|dS)Nzfoo()
zbar returned)r,bar)nxr	r	r
foosrcCstd|d|dS)Nzbar(rr=)r,)ar	r	r
rsrcCst}|jddS)Nzimport bdb; bdb.foo(10))rr)rr	r	r
tests	r)rArXrinspectr__all__	Exceptionrrr[rrrIrrrrr	r	r	r
<module>sZ0
Back to Directory File Manager