U if @sDddlZddlZddlmZddlmZddZddZd d ZdS) N) base_futures) coroutinescCsnt|}|jrd|d<|dd|t|j}|dd|d|jdk rj|dd |j|S) NZ cancellingrrzname=%rzcoro=<>z wait_for=) rZ_future_repr_infoZ _must_cancelinsertZget_namerZ_format_coroutine_coroZ _fut_waiter)taskinfocoror 7/opt/alt/python38/lib64/python3.8/asyncio/base_tasks.py_task_repr_infos   rcCsg}t|jdr|jj}n0t|jdr0|jj}nt|jdrF|jj}nd}|dk r|dk r|dk rt|dkrlq|d8}|||j}qR|nH|jdk r|jj }|dk r|dk r|dkrq|d8}||j |j }q|S)Ncr_framegi_frameag_framerr) hasattrr rrrappendf_backreverse _exception __traceback__tb_frametb_next)r limitZframesftbr r r_task_get_stacks6          rc Csg}t}|j|dD]Z}|j}|j}|j}|j} ||krN||t|t |||j } | ||| | fq|j } |st d||dn2| dk rt d|d|dnt d|d|dtj||d| dk rt| j| D]} t | |ddqdS) N)rz No stack for )filezTraceback for z (most recent call last):z Stack for )rend)setZ get_stackf_linenof_code co_filenameco_nameadd linecache checkcachegetline f_globalsrrprint traceback print_listformat_exception_only __class__) r rrextracted_listcheckedrlinenocofilenamenamelineexcr r r_task_print_stack<s,  r9)r(r-r rrrrr9r r r rs   #