Your IP : 18.218.5.216


Current Path : /opt/alt/python33/lib64/python3.3/__pycache__/
Upload File :
Current File : //opt/alt/python33/lib64/python3.3/__pycache__/bdb.cpython-33.pyc

�
��f�Uc@s�dZddlZddlZddlZdddgZGdd�de�ZGdd�d�Zdd	�ZGd
d�d�Z	dd�Z
d
d�ZGdd�de�Zdd�Z
dd�Zdd�ZdS(uDebugger basicsiNuBdbQuituBdbu
BreakpointcBs|EeZdZdZdS(uBdbQuitu Exception to give up completely.N(u__name__u
__module__u__qualname__u__doc__(u
__locals__((u(/opt/alt/python33/lib64/python3.3/bdb.pyuBdbQuit	scBs6|EeZdZdZdXdd�Zdd�Zdd�Zdd	�Zd
d�Z	dd
�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%d&�ZdXd'd(�Zd)d*�Zd+d,�Zd-d.�ZdXd/d0�Zd1d2�Zd3d4�ZdYdXdXd5d6�Zd7d8�Z d9d:�Z!d;d<�Z"d=d>�Z#d?d@�Z$dAdB�Z%dCdD�Z&dEdF�Z'dGdH�Z(dIdJ�Z)dKdL�Z*dMdNdO�Z+dXdXdPdQ�Z,dXdXdRdS�Z-dTdU�Z.dVdW�Z/dXS(ZuBdbu�Generic Python debugger base class.

    This class takes care of details of the trace facility;
    a derived class should implement user interaction.
    The standard debugger class (pdb.Pdb) is an example.
    cCs:|rt|�nd|_i|_i|_d|_dS(N(usetuNoneuskipubreaksufncacheuframe_returning(uselfuskip((u(/opt/alt/python33/lib64/python3.3/bdb.pyu__init__s		uBdb.__init__cCsr|d|dd�dkr"|S|jj|�}|sntjj|�}tjj|�}||j|<n|S(Nu<iu>i����(ufncacheugetuosupathuabspathunormcase(uselfufilenameucanonic((u(/opt/alt/python33/lib64/python3.3/bdb.pyucanonicsuBdb.canoniccCs3ddl}|j�d|_|jdd�dS(Ni(u	linecacheu
checkcacheuNoneubotframeu
_set_stopinfo(uselfu	linecache((u(/opt/alt/python33/lib64/python3.3/bdb.pyureset%s
	u	Bdb.resetcCs�|jr
dS|dkr&|j|�S|dkrB|j||�S|dkr^|j||�S|dkrz|j||�S|dkr�|jS|dkr�|jS|dkr�|jStdt|��|jS(	Nulineucallureturnu	exceptionuc_calluc_exceptionuc_returnu*bdb.Bdb.dispatch: unknown debugging event:(uquittingu
dispatch_lineu
dispatch_calludispatch_returnudispatch_exceptionutrace_dispatchuprinturepr(uselfuframeueventuarg((u(/opt/alt/python33/lib64/python3.3/bdb.pyutrace_dispatch+s$	
uBdb.trace_dispatchcCsG|j|�s|j|�r@|j|�|jr@t�q@n|jS(N(u	stop_hereu
break_hereu	user_lineuquittinguBdbQuitutrace_dispatch(uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
dispatch_line?s

	uBdb.dispatch_linecCsm|jdkr"|j|_|jS|j|�p=|j|�sDdS|j||�|jrft�n|jS(N(	ubotframeuNoneuf_backutrace_dispatchu	stop_hereubreak_anywhereu	user_calluquittinguBdbQuit(uselfuframeuarg((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
dispatch_callEs		uBdb.dispatch_callcCsd|j|�s||jkr]z||_|j||�Wdd|_X|jr]t�q]n|jS(N(u	stop_hereureturnframeuframe_returninguuser_returnuNoneuquittinguBdbQuitutrace_dispatch(uselfuframeuarg((u(/opt/alt/python33/lib64/python3.3/bdb.pyudispatch_returnRs	
	uBdb.dispatch_returncCs;|j|�r4|j||�|jr4t�q4n|jS(N(u	stop_hereuuser_exceptionuquittinguBdbQuitutrace_dispatch(uselfuframeuarg((u(/opt/alt/python33/lib64/python3.3/bdb.pyudispatch_exception\s
	uBdb.dispatch_exceptioncCs.x'|jD]}tj||�r
dSq
WdS(NTF(uskipufnmatchuTrueuFalse(uselfumodule_nameupattern((u(/opt/alt/python33/lib64/python3.3/bdb.pyuis_skipped_modulefsuBdb.is_skipped_modulecCs�|jr(|j|jjd��r(dS||jkrZ|jdkrJdS|j|jkSx;|dk	r�||jk	r�||j	kr�dS|j}q]WdS(Nu__name__iFi����T(uskipuis_skipped_moduleu	f_globalsugetuFalseu	stopframeu
stoplinenouf_linenouNoneubotframeuTrueuf_back(uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	stop_herels	
u
Bdb.stop_herecCs�|j|jj�}||jkr(dS|j}||j|krj|jj}||j|krjdSnt|||�\}}|r�|j|_	|r�|j
r�|jt|j��ndSdSdS(NFT(ucanonicuf_codeuco_filenameubreaksuFalseuf_linenouco_firstlinenou	effectiveunumberu	currentbpu	temporaryudo_clearustruTrue(uselfuframeufilenameulinenoubpuflag((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
break_here|s	uBdb.break_herecCstd��dS(Nu)subclass of bdb must implement do_clear()(uNotImplementedError(uselfuarg((u(/opt/alt/python33/lib64/python3.3/bdb.pyudo_clear�suBdb.do_clearcCs|j|jj�|jkS(N(ucanonicuf_codeuco_filenameubreaks(uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyubreak_anywhere�suBdb.break_anywherecCsdS(unThis method is called when there is the remote possibility
        that we ever need to stop in this function.N((uselfuframeu
argument_list((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	user_call�su
Bdb.user_callcCsdS(u9This method is called when we stop or break at this line.N((uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	user_line�su
Bdb.user_linecCsdS(u5This method is called when a return trap is set here.N((uselfuframeureturn_value((u(/opt/alt/python33/lib64/python3.3/bdb.pyuuser_return�suBdb.user_returncCsdS(umThis method is called if an exception occurs,
        but only if we are to stop at or just below this level.N((uselfuframeuexc_info((u(/opt/alt/python33/lib64/python3.3/bdb.pyuuser_exception�suBdb.user_exceptionicCs(||_||_d|_||_dS(NF(u	stopframeureturnframeuFalseuquittingu
stoplineno(uselfu	stopframeureturnframeu
stoplineno((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
_set_stopinfo�s			uBdb._set_stopinfocCs3|dkr|jd}n|j|||�dS(uxStop when the line with the line no greater than the current one is
        reached or when returning from current frameiN(uNoneuf_linenou
_set_stopinfo(uselfuframeulineno((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	set_until�su
Bdb.set_untilcCsK|jr7|jj}|r7|jr7|j|_q7n|jdd�dS(uStop after one line of code.N(uframe_returninguf_backuf_traceutrace_dispatchu
_set_stopinfouNone(uselfucaller_frame((u(/opt/alt/python33/lib64/python3.3/bdb.pyuset_step�s
	uBdb.set_stepcCs|j|d�dS(u2Stop on the next line in or below the given frame.N(u
_set_stopinfouNone(uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyuset_next�suBdb.set_nextcCs|j|j|�dS(u)Stop when returning from the given frame.N(u
_set_stopinfouf_back(uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
set_return�suBdb.set_returncCsq|dkrtj�j}n|j�x(|rR|j|_||_|j}q+W|j�tj	|j�dS(upStart debugging from `frame`.

        If frame is not specified, debugging starts from caller's frame.
        N(
uNoneusysu	_getframeuf_backuresetutrace_dispatchuf_traceubotframeuset_stepusettrace(uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	set_trace�s
		

u
Bdb.set_tracecCsm|j|jdd�|jsitjd�tj�j}x+|re||jk	re|`|j}q>WndS(Nii����(	u
_set_stopinfoubotframeuNoneubreaksusysusettraceu	_getframeuf_backuf_trace(uselfuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyuset_continue�s	
uBdb.set_continuecCs/|j|_d|_d|_tjd�dS(NT(ubotframeu	stopframeuNoneureturnframeuTrueuquittingusysusettrace(uself((u(/opt/alt/python33/lib64/python3.3/bdb.pyuset_quit�s		uBdb.set_quitc
Cs�|j|�}ddl}|j||�}|sAd||fS|jj|g�}||krr|j|�nt|||||�}	dS(NiuLine %s:%d does not exist(ucanonicu	linecacheugetlineubreaksu
setdefaultuappendu
Breakpoint(
uselfufilenameulinenou	temporaryucondufuncnameu	linecacheulineulistubp((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	set_break�su
Bdb.set_breakcCsJ||ftjkr,|j|j|�n|j|sF|j|=ndS(N(u
Breakpointubplistubreaksuremove(uselfufilenameulineno((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
_prune_breakss
uBdb._prune_breakscCs�|j|�}||jkr&d|S||j|krGd||fSx/tj||fdd�D]}|j�qeW|j||�dS(NuThere are no breakpoints in %suThere is no breakpoint at %s:%d(ucanonicubreaksu
BreakpointubplistudeleteMeu
_prune_breaks(uselfufilenameulinenoubp((u(/opt/alt/python33/lib64/python3.3/bdb.pyuclear_break
s$uBdb.clear_breakcCsiy|j|�}Wn/tk
rD}zt|�SWYdd}~XnX|j�|j|j|j�dS(N(uget_bpbynumberu
ValueErrorustrudeleteMeu
_prune_breaksufileuline(uselfuargubpuerr((u(/opt/alt/python33/lib64/python3.3/bdb.pyuclear_bpbynumbers
uBdb.clear_bpbynumbercCsz|j|�}||jkr&d|SxC|j|D]4}tj||f}x|D]}|j�qTWq4W|j|=dS(NuThere are no breakpoints in %s(ucanonicubreaksu
BreakpointubplistudeleteMe(uselfufilenameulineublistubp((u(/opt/alt/python33/lib64/python3.3/bdb.pyuclear_all_file_breaks!s
uBdb.clear_all_file_breakscCsA|js
dSx$tjD]}|r|j�qqWi|_dS(NuThere are no breakpoints(ubreaksu
Breakpointu
bpbynumberudeleteMe(uselfubp((u(/opt/alt/python33/lib64/python3.3/bdb.pyuclear_all_breaks+s	uBdb.clear_all_breakscCs�|std��nyt|�}Wn"tk
rItd|��YnXytj|}Wn"tk
rtd|��YnX|dkr�td|��n|S(NuBreakpoint number expectedu Non-numeric breakpoint number %su!Breakpoint number %d out of rangeuBreakpoint %d already deleted(u
ValueErroruintu
Breakpointu
bpbynumberu
IndexErroruNone(uselfuargunumberubp((u(/opt/alt/python33/lib64/python3.3/bdb.pyuget_bpbynumber3s

uBdb.get_bpbynumbercCs/|j|�}||jko.||j|kS(N(ucanonicubreaks(uselfufilenameulineno((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	get_breakBsu
Bdb.get_breakcCsH|j|�}||jkrD||j|krDtj||fpGgS(N(ucanonicubreaksu
Breakpointubplist(uselfufilenameulineno((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
get_breaksGsuBdb.get_breakscCs1|j|�}||jkr)|j|SgSdS(N(ucanonicubreaks(uselfufilename((u(/opt/alt/python33/lib64/python3.3/bdb.pyuget_file_breaksMsuBdb.get_file_breakscCs|jS(N(ubreaks(uself((u(/opt/alt/python33/lib64/python3.3/bdb.pyuget_all_breaksTsuBdb.get_all_breakscCs�g}|r'|j|kr'|j}nxB|dk	rk|j||jf�||jkr_Pn|j}q*W|j�tdt	|�d�}x2|dk	r�|j|j|j
f�|j}q�W|dkr�tdt	|�d�}n||fS(Nii(utb_frameutb_nextuNoneuappenduf_linenoubotframeuf_backureverseumaxulenu	tb_lineno(uselfufutustackui((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	get_stackZs 


u
Bdb.get_stacku: cCs2ddl}ddl}|\}}|j|jj�}d||f}|jjrh||jj7}n
|d7}d|jkr�|jd}	nd}	|	r�||j|	�7}n
|d7}d|jkr�|jd}
|d7}||j|
�7}n|j	|||j
�}|r.|||j�7}n|S(Niu%s(%r)u<lambda>u__args__u()u
__return__u->(u	linecacheureprlibucanonicuf_codeuco_filenameuco_nameuf_localsuNoneureprugetlineu	f_globalsustrip(uselfuframe_linenoulprefixu	linecacheureprlibuframeulinenoufilenameusuargsurvuline((u(/opt/alt/python33/lib64/python3.3/bdb.pyuformat_stack_entryls*



uBdb.format_stack_entrycCs�|dkr$ddl}|j}n|dkr9|}n|j�t|t�rgt|dd�}ntj|j	�z-yt
|||�Wntk
r�YnXWdd|_
tjd�XdS(Niu<string>uexecT(uNoneu__main__u__dict__uresetu
isinstanceustrucompileusysusettraceutrace_dispatchuexecuBdbQuituTrueuquitting(uselfucmduglobalsulocalsu__main__((u(/opt/alt/python33/lib64/python3.3/bdb.pyurun�s	

		uBdb.runcCs�|dkr$ddl}|j}n|dkr9|}n|j�tj|j�z-yt|||�SWntk
r~YnXWdd|_
tjd�XdS(NiT(uNoneu__main__u__dict__uresetusysusettraceutrace_dispatchuevaluBdbQuituTrueuquitting(uselfuexpruglobalsulocalsu__main__((u(/opt/alt/python33/lib64/python3.3/bdb.pyuruneval�s	

		uBdb.runevalcCs|j|||�dS(N(urun(uselfucmduglobalsulocals((u(/opt/alt/python33/lib64/python3.3/bdb.pyurunctx�su
Bdb.runctxcOsj|j�tj|j�d}z,y|||�}Wntk
rJYnXWdd|_tjd�X|S(NT(uresetusysusettraceutrace_dispatchuNoneuBdbQuituTrueuquitting(uselfufuncuargsukwdsures((u(/opt/alt/python33/lib64/python3.3/bdb.pyuruncall�s

		uBdb.runcallNF(0u__name__u
__module__u__qualname__u__doc__uNoneu__init__ucanonicuresetutrace_dispatchu
dispatch_lineu
dispatch_calludispatch_returnudispatch_exceptionuis_skipped_moduleu	stop_hereu
break_hereudo_clearubreak_anywhereu	user_callu	user_lineuuser_returnuuser_exceptionu
_set_stopinfou	set_untiluset_stepuset_nextu
set_returnu	set_traceuset_continueuset_quituFalseu	set_breaku
_prune_breaksuclear_breakuclear_bpbynumberuclear_all_file_breaksuclear_all_breaksuget_bpbynumberu	get_breaku
get_breaksuget_file_breaksuget_all_breaksu	get_stackuformat_stack_entryurunurunevalurunctxuruncall(u
__locals__((u(/opt/alt/python33/lib64/python3.3/bdb.pyuBdb
sX





cCst�j�dS(N(uBdbu	set_trace(((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	set_trace�su	set_tracecBs�|EeZdZdZdZiZdgZddddd�Z	dd�Z
dd�Zd	d
�Zddd�Z
d
d�Zdd�ZdS(u
Breakpointu�Breakpoint class.

    Implements temporary breakpoints, ignore counts, disabling and
    (re)-enabling, and conditionals.

    Breakpoints are indexed by number through bpbynumber and by
    the file,line tuple using bplist.  The former points to a
    single instance of class Breakpoint.  The latter points to a
    list of such instances since there may be more than one
    breakpoint per line.

    icCs�||_d|_||_||_||_||_d|_d|_	d|_
tj|_
tjd7_|jj|�||f|jkr�|j||fj|�n|g|j||f<dS(NiiT(ufuncnameuNoneufunc_first_executable_lineufileulineu	temporaryuconduTrueuenableduignoreuhitsu
Breakpointunextunumberu
bpbynumberuappendubplist(uselfufileulineu	temporaryucondufuncname((u(/opt/alt/python33/lib64/python3.3/bdb.pyu__init__�s									uBreakpoint.__init__cCsT|j|jf}d|j|j<|j|j|�|j|sP|j|=ndS(N(ufileulineuNoneu
bpbynumberunumberubplisturemove(uselfuindex((u(/opt/alt/python33/lib64/python3.3/bdb.pyudeleteMe�s

uBreakpoint.deleteMecCs
d|_dS(NT(uTrueuenabled(uself((u(/opt/alt/python33/lib64/python3.3/bdb.pyuenable�suBreakpoint.enablecCs
d|_dS(NF(uFalseuenabled(uself((u(/opt/alt/python33/lib64/python3.3/bdb.pyudisable�suBreakpoint.disablecCs2|dkrtj}nt|j�d|�dS(Nufile(uNoneusysustdoutuprintubpformat(uselfuout((u(/opt/alt/python33/lib64/python3.3/bdb.pyubpprint�suBreakpoint.bpprintcCs�|jrd}nd}|jr.|d}n
|d}d|j||j|jf}|jrw|d|jf7}n|jr�|d|jf7}n|jr�|jdkr�d	}nd
}|d|j|f7}n|S(Nudel  ukeep uyes  uno   u%-4dbreakpoint   %s at %s:%du
	stop only if %su
	ignore next %d hitsiusuu"
	breakpoint already hit %d time%s(u	temporaryuenabledunumberufileulineuconduignoreuhits(uselfudispuretuss((u(/opt/alt/python33/lib64/python3.3/bdb.pyubpformats$			

				uBreakpoint.bpformatcCsd|j|j|jfS(Nubreakpoint %s at %s:%s(unumberufileuline(uself((u(/opt/alt/python33/lib64/python3.3/bdb.pyu__str__suBreakpoint.__str__NF(u__name__u
__module__u__qualname__u__doc__unextubplistuNoneu
bpbynumberuFalseu__init__udeleteMeuenableudisableubpprintubpformatu__str__(u
__locals__((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
Breakpoint�s	cCsn|js#|j|jkrdSdS|jj|jkr<dS|jsT|j|_n|j|jkrjdSdS(u;Check whether we should break here because of `b.funcname`.FT(ufuncnameulineuf_linenouFalseuTrueuf_codeuco_nameufunc_first_executable_line(ubuframe((u(/opt/alt/python33/lib64/python3.3/bdb.pyu
checkfuncnames		u
checkfuncnamecCs�tj||f}x�|D]�}|js/qnt||�sDqn|jd7_|js�|jdkr�|jd8_qq�|dfSqySt|j|j	|j
�}|r�|jdkr�|jd8_q�|dfSnWq|dfSYqXqWdS(u�Determine which breakpoint for this file:line is to be acted upon.

    Called only if we know there is a bpt at this
    location.  Returns breakpoint that was triggered and a flag
    that indicates if it is ok to delete a temporary bp.

    iiTFN(NN(
u
Breakpointubplistuenabledu
checkfuncnameuhitsuconduignoreuTrueuevalu	f_globalsuf_localsuFalseuNone(ufileulineuframeu	possiblesubuval((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	effective:s*
		
u	effectivecBsD|EeZdZdd�Zdd�Zdd�Zdd�Zd	S(
uTdbcCs/|jj}|sd}ntd||�dS(Nu???u+++ call(uf_codeuco_nameuprint(uselfuframeuargsuname((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	user_callks	u
Tdb.user_callcCs}ddl}|jj}|s'd}n|j|jj�}|j||j|j�}td||j|d|j	��dS(Niu???u+++u:(
u	linecacheuf_codeuco_nameucanonicuco_filenameugetlineuf_linenou	f_globalsuprintustrip(uselfuframeu	linecacheunameufnuline((u(/opt/alt/python33/lib64/python3.3/bdb.pyu	user_lineos	u
Tdb.user_linecCstd|�dS(Nu
+++ return(uprint(uselfuframeuretval((u(/opt/alt/python33/lib64/python3.3/bdb.pyuuser_returnvsuTdb.user_returncCstd|�|j�dS(Nu
+++ exception(uprintuset_continue(uselfuframeu	exc_stuff((u(/opt/alt/python33/lib64/python3.3/bdb.pyuuser_exceptionxs
uTdb.user_exceptionN(u__name__u
__module__u__qualname__u	user_callu	user_lineuuser_returnuuser_exception(u
__locals__((u(/opt/alt/python33/lib64/python3.3/bdb.pyuTdbjsuTdbcCs1td|d�t|d�}td|�dS(Nufoo(u)i
ubar returned(uprintubar(unux((u(/opt/alt/python33/lib64/python3.3/bdb.pyufoo|sufoocCstd|d�|dS(Nubar(u)i(uprint(ua((u(/opt/alt/python33/lib64/python3.3/bdb.pyubar�subarcCst�}|jd�dS(Nuimport bdb; bdb.foo(10)(uTdburun(ut((u(/opt/alt/python33/lib64/python3.3/bdb.pyutest�s	utest(u__doc__ufnmatchusysuosu__all__u	ExceptionuBdbQuituBdbu	set_traceu
Breakpointu
checkfuncnameu	effectiveuTdbufooubarutest(((u(/opt/alt/python33/lib64/python3.3/bdb.pyu<module>s��Z0

?>