grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026U iÛf8}ã@s²ddlZddlZddlZddlmZmZmZdddgZeeBeBZGdd„de ƒZ Gdd„dƒZ dd „Z Gd d„dƒZ d d „Zd d„ZGdd„de ƒZdd„Zdd„Zdd„ZdS)éN)Ú CO_GENERATORÚ CO_COROUTINEÚCO_ASYNC_GENERATORÚBdbQuitÚBdbÚ Breakpointc@s eZdZdS)rN)Ú__name__Ú __module__Ú __qualname__©r r ú(/opt/alt/python38/lib64/python3.8/bdb.pyr sc@sreZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Zdd„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zd[d%d&„Zd\d'd(„Zd)d*„Zd+d,„Zd-d.„Zd]d/d0„Zd1d2„Zd3d4„Zd^d6d7„Zd8d9„Zd:d;„Zdd?„Z d@dA„Z!dBdC„Z"dDdE„Z#dFdG„Z$dHdI„Z%dJdK„Z&dLdM„Z'd_dOdP„Z(d`dQdR„Z)dadSdT„Z*dUdV„Z+dWdX„Z,dYe,_-dS)brNcCs(|r t|ƒnd|_i|_i|_d|_dS©N)ÚsetÚskipÚbreaksÚfncacheÚframe_returning)Úselfrr r r Ú__init__sz Bdb.__init__cCsR|d|dd…dkr|S|j |¡}|sNtj |¡}tj |¡}||j|<|S)Nú<ééÿÿÿÿú>)rÚgetÚosÚpathÚabspathÚnormcase)rÚfilenameÚcanonicr r r r%s    z Bdb.canoniccCs&ddl}| ¡d|_| dd¡dS)Nr)Ú linecacheÚ checkcacheÚbotframeÚ _set_stopinfo)rr r r r Úreset6sz Bdb.resetcCs–|jr dS|dkr| |¡S|dkr0| ||¡S|dkrD| ||¡S|dkrX| ||¡S|dkrf|jS|dkrt|jS|dkr‚|jStdt|ƒƒ|jS) NÚlineZcallÚreturnZ exceptionZc_callZ c_exceptionZc_returnz*bdb.Bdb.dispatch: unknown debugging event:)ÚquittingÚ dispatch_lineÚ dispatch_callÚdispatch_returnÚdispatch_exceptionÚtrace_dispatchÚprintÚrepr)rÚframeZeventÚargr r r r,=s$    zBdb.trace_dispatchcCs.| |¡s| |¡r(| |¡|jr(t‚|jSr )Ú stop_hereÚ break_hereÚ user_liner'rr,©rr/r r r r(hs  zBdb.dispatch_linecCsd|jdkr|j|_|jS| |¡s0| |¡s0dS|jrH|jjt@rH|jS|  ||¡|j r^t ‚|jSr ) r"Úf_backr,r1Úbreak_anywhereÚ stopframeÚf_codeÚco_flagsÚGENERATOR_AND_COROUTINE_FLAGSÚ user_callr'r©rr/r0r r r r)ts  zBdb.dispatch_callcCs|| |¡s||jkrv|jr,|jjt@r,|jSz||_| ||¡W5d|_X|j rVt ‚|j|krv|j dkrv|  dd¡|jS©Nr) r1Ú returnframer7r8r9r:r,rÚ user_returnr'rÚ stoplinenor#r<r r r r*Šs zBdb.dispatch_returncCs�| |¡rF|jjt@r.|dtkr.|ddksŠ| ||¡|jrŠt‚nD|jrŠ||jk rŠ|jjjt@rŠ|dtt fkrŠ| ||¡|jrŠt‚|j S)Nré) r1r8r9r:Ú StopIterationÚuser_exceptionr'rr7Ú GeneratorExitr,r<r r r r+ s$   ÿ ÿ  ÿþ zBdb.dispatch_exceptioncCs.|dkr dS|jD]}t ||¡rdSqdS©NFT)rÚfnmatch)rZ module_nameÚpatternr r r Úis_skipped_module¿s   zBdb.is_skipped_modulecCsN|jr| |j d¡¡rdS||jkr@|jdkr4dS|j|jkS|jsJdSdS)NrFrT)rrHÚ f_globalsrr7r@Úf_linenor4r r r r1Èsÿ   z Bdb.stop_herecCsŒ| |jj¡}||jkrdS|j}||j|krJ|jj}||j|krJdSt|||ƒ\}}|r„|j|_|r€|j r€|  t |jƒ¡dSdSdSrE) rr8Ú co_filenamerrJÚco_firstlinenoÚ effectiveÚnumberZ currentbpÚ temporaryÚdo_clearÚstr)rr/rÚlinenoÚbpÚflagr r r r2×s  zBdb.break_herecCs tdƒ‚dS)Nz)subclass of bdb must implement do_clear())ÚNotImplementedError)rr0r r r rPòsz Bdb.do_clearcCs| |jj¡|jkSr )rr8rKrr4r r r r6ùszBdb.break_anywherecCsdSr r )rr/Z argument_listr r r r;sz Bdb.user_callcCsdSr r r4r r r r3sz Bdb.user_linecCsdSr r )rr/Z return_valuer r r r? szBdb.user_returncCsdSr r )rr/Úexc_infor r r rC szBdb.user_exceptionrcCs||_||_d|_||_dS©NF)r7r>r'r@)rr7r>r@r r r r#szBdb._set_stopinfocCs$|dkr|jd}| |||¡dS)Nr)rJr#)rr/rRr r r Ú set_until"s z Bdb.set_untilcCs0|jr |jj}|r |js |j|_| dd¡dSr )rr5Úf_tracer,r#)rZ caller_framer r r Úset_step*s  z Bdb.set_stepcCs| |d¡dSr )r#r4r r r Úset_next6sz Bdb.set_nextcCs.|jjt@r| |dd¡n| |j|¡dSr=)r8r9r:r#r5r4r r r Ú set_return:s zBdb.set_returncCsL|dkrt ¡j}| ¡|r4|j|_||_|j}q| ¡t |j¡dSr ) ÚsysÚ _getframer5r$r,rYr"rZÚsettracer4r r r Ú set_traceAs z Bdb.set_tracecCsH| |jdd¡|jsDt d¡t ¡j}|rD||jk rD|`|j}q*dSr=)r#r"rr]r_r^r5rYr4r r r Ú set_continuePs  zBdb.set_continuecCs"|j|_d|_d|_t d¡dS©NT)r"r7r>r'r]r_©rr r r Úset_quit_sz Bdb.set_quitFc Csb| |¡}ddl}| ||¡}|s.d||fS|j |g¡}||krN| |¡t|||||ƒ} dS)NrzLine %s:%d does not exist)rr ÚgetlinerÚ setdefaultÚappendr) rrrRrOÚcondÚfuncnamer r%ÚlistrSr r r Ú set_breakps    z Bdb.set_breakcCs4||ftjkr|j| |¡|j|s0|j|=dSr )rÚbplistrÚremove©rrrRr r r Ú _prune_breaks‚s zBdb._prune_breakscCsj| |¡}||jkrd|S||j|kr6d||fStj||fdd…D] }| ¡qL| ||¡dS)NúThere are no breakpoints in %szThere is no breakpoint at %s:%d)rrrrlÚdeleteMero)rrrRrSr r r Ú clear_break�s     zBdb.clear_breakc CsZz| |¡}Wn.tk r<}zt|ƒWY¢Sd}~XYnX| ¡| |j|j¡dSr )Úget_bpbynumberÚ ValueErrorrQrqroÚfiler%)rr0rSÚerrr r r Úclear_bpbynumber szBdb.clear_bpbynumbercCsX| |¡}||jkrd|S|j|D]$}tj||f}|D] }| ¡qz()Z __return__z->) r Úreprlibrr8rKÚco_nameÚf_localsr.rerIÚstrip) rZ frame_linenoZlprefixr rŽr/rRrÚsÚrvr%r r r Úformat_stack_entrys    zBdb.format_stack_entryc CsŽ|dkrddl}|j}|dkr"|}| ¡t|tƒr@t|ddƒ}t |j¡z*zt |||ƒWnt k rrYnXW5d|_ t d¡XdS)NrzÚexecT) Ú__main__Ú__dict__r$Ú isinstancerQÚcompiler]r_r,r'r•r)rÚcmdÚglobalsÚlocalsr–r r r Úrun5s    zBdb.runc Csz|dkrddl}|j}|dkr"|}| ¡t |j¡z,zt|||ƒWW¢Stk r^YnXW5d|_t d¡XdS)NrT) r–r—r$r]r_r,r'Úevalr)rÚexprr›rœr–r r r ÚrunevalKs  z Bdb.runevalcCs| |||¡dSr )r�)rršr›rœr r r Úrunctx_sz Bdb.runctxc OsÆt|ƒdkr|^}}}nV|s&tdƒ‚nHd|krZ| d¡}|^}}ddl}|jdtdd�ntdt|ƒdƒ‚| ¡t |j ¡d}z(z|||Ž}Wnt k rªYnXW5d |_ t d¡X|S) NrAz6descriptor 'runcall' of 'Bdb' object needs an argumentÚfuncrz0Passing 'func' as keyword argument is deprecated)Ú stacklevelz7runcall expected at least 1 positional argument, got %drT) r†Ú TypeErrorÚpopÚwarningsÚwarnÚDeprecationWarningr$r]r_r,r'r)ÚargsÚkwdsrr¢r¦Úresr r r Úruncallfs2    ÿ ÿ   z Bdb.runcallz($self, func, /, *args, **kwds))N)r)N)N)FNN)r�)NN)NN).rr r rrr$r,r(r)r*r+rHr1r2rPr6r;r3r?rCr#rXrZr[r\r`rardrkrorrrwrxrzrsr~rr€r�rŒr”r�r r¡r¬Ú__text_signature__r r r r rsZ +      ÿ         cCstƒ ¡dSr )rr`r r r r r`ˆsr`c@sVeZdZdZiZdgZddd„Zdd„Zdd „Zd d „Z dd d „Z dd„Z dd„Z dS)rrNFcCs�||_d|_||_||_||_||_d|_d|_d|_t j |_ t j d7_ |j   |¡||f|jkr||j||f  |¡n|g|j||f<dS)NTrr)riÚfunc_first_executable_linerur%rOrhÚenabledÚignoreÚhitsrÚnextrNryrgrl)rrur%rOrhrir r r r¨s zBreakpoint.__init__cCs>|j|jf}d|j|j<|j| |¡|j|s:|j|=dSr )rur%ryrNrlrm)rÚindexr r r rq¼s    zBreakpoint.deleteMecCs d|_dSrb©r¯rcr r r ÚenableÊszBreakpoint.enablecCs d|_dSrWr´rcr r r ÚdisableÎszBreakpoint.disablecCs"|dkrtj}t| ¡|d�dS)N)ru)r]Ústdoutr-Úbpformat)rÚoutr r r ÚbpprintÒszBreakpoint.bpprintcCsš|jr d}nd}|jr |d}n|d}d|j||j|jf}|jrT|d|jf7}|jrj|d|jf7}|jr–|jdkr€d }nd }|d |j|f7}|S) Nzdel zkeep zyes zno z%-4dbreakpoint %s at %s:%dz stop only if %sz ignore next %d hitsrr’Úz" breakpoint already hit %d time%s)rOr¯rNrur%rhr°r±)rZdispZretZssr r r r¸Üs( ÿ zBreakpoint.bpformatcCsd|j|j|jfS)Nzbreakpoint %s at %s:%s)rNrur%rcr r r Ú__str__úszBreakpoint.__str__)FNN)N) rr r r²rlryrrqrµr¶rºr¸r¼r r r r r�s  cCsN|js|j|jkrdSdS|jj|jkr,dS|js:|j|_|j|jkrJdSdSrE)rir%rJr8r�r®)Úbr/r r r Ú checkfuncnames  r¾cCsÊtj||f}|D]²}|jsqt||ƒs*q|jd7_|jsh|jdkrZ|jd8_qqÄ|dfSqzBt|j|j|j ƒ}|r¨|jdkrš|jd8_n|dfWSWq|dfYSXqdS)NrrTF)NN) rrlr¯r¾r±rhr°ržrIr�)rur%r/Z possiblesr½Úvalr r r rM#s*   rMc@s,eZdZdd„Zdd„Zdd„Zdd„Zd S) ÚTdbcCs |jj}|sd}td||ƒdS)Nú???z+++ call)r8r�r-)rr/r©Únamer r r r;Tsz Tdb.user_callcCsTddl}|jj}|sd}| |jj¡}| ||j|j¡}td||j|d|  ¡ƒdS)NrrÁz+++ú:) r r8r�rrKrerJrIr-r‘)rr/r rÂÚfnr%r r r r3Xsz Tdb.user_linecCstd|ƒdS)Nz +++ return©r-)rr/Zretvalr r r r?_szTdb.user_returncCstd|ƒ| ¡dS)Nz +++ exception)r-ra)rr/Z exc_stuffr r r rCas zTdb.user_exceptionN)rr r r;r3r?rCr r r r rÀSsrÀcCs&td|dƒt|dƒ}td|ƒdS)Nzfoo(ú)é z bar returned)r-Úbar)ÚnÚxr r r Úfooes  rËcCstd|dƒ|dS)Nzbar(rÆrArÅ)Úar r r rÈjs rÈcCstƒ}| d¡dS)Nzimport bdb; bdb.foo(10))rÀr�)r‰r r r ÚtestnsrÍ)rFr]rÚinspectrrrÚ__all__r:Ú Exceptionrrr`rr¾rMrÀrËrÈrÍr r r r Ús&  {t"0