NfeJdgZddlmZddlmZddlmZGddZdS) TaskGroup)events) exceptions)taskscPeZdZdZdZdZdZddddZded e fd Z d Z d Z dS) rcd|_d|_d|_d|_d|_d|_t |_g|_d|_ d|_ dS)NF) _entered_exiting _aborting_loop _parent_task_parent_cancel_requestedset_tasks_errors _base_error_on_completed_futselfs )/usr/lib/python3.11/asyncio/taskgroups.py__init__zTaskGroup.__init__sV    (-%ee  !%ctdg}|jr*|dt|j|jr*|dt|j|jr|dn|jr|dd|}d|dS) Nztasks=zerrors= cancellingentered z )rappendlenrr r join)rinfoinfo_strs r__repr__zTaskGroup.__repr__st ; 5 KK3T[!1!133 4 4 4 < 7 KK5#dl"3"355 6 6 6 > # KK % % % % ] # KK " " "88D>>'H''''rcK|jrtd|dd|_|jtj|_t j|j|_|jtd|d|S)N TaskGroup z has been already enteredTz! cannot determine the parent task)r RuntimeErrorr rget_running_loopr current_taskr rs r __aenter__zTaskGroup.__aenter__(s = @>T>>>@@ @ : 022DJ!.tz::   $FTFFFHH H rcKd|_|#||r|j||_|tjur|nd}|jr|jdkrd}||js| |j r{|j |j |_ |j d{Vn9#tj$r'}|js|}| Yd}~nd}~wwxYwd|_ |j {|j rJ|j|j|r |js||(|tjur|j||jr% t!d|j}|d#d|_wxYwdS)NTzunhandled errors in a TaskGroup)r _is_base_errorrrCancelledErrorrr uncancelr _abortrrr create_futurerrBaseExceptionGroup)retexctbpropagate_cancellation_errorexmes r __aexit__zTaskGroup.__aexit__8s O##C((  ("D 222CC %  ( 4 ))++q0004, >>  k *%-)-)A)A)C)C& ",,,,,,,,,, " " "~ "460KKMMM "&*D "'k **;   '" " ( /  /. . >b (AAA L   $ $ $ < $ $'(I4<XXd"# #### $ $s$1 B??C5C00C5E22 E;N)namecontextc|jstd|d|jr|jstd|d|jrtd|d||j|}n|j||}tj||| |j |j ||S)Nr&z has not been enteredz is finishedz is shutting down)r;) r r'r rr r create_taskr_set_task_nameadd_done_callback _on_task_doneadd)rcoror:r;tasks rr=zTaskGroup.create_tasks} KIDIIIJJ J = B B@D@@@AA A > GEDEEEFF F ?:))$//DD:))$)@@D T4((( t1222  rr4returncht|tsJt|ttfS)N) isinstance BaseException SystemExitKeyboardInterrupt)rr4s rr-zTaskGroup._is_base_errors.#}-----# ,=>???rcxd|_|jD]*}|s|+dS)NT)r rdonecancel)rts rr0zTaskGroup._abortsB  A6688    rc|j||j:|js3|js|jd|rdS|}|dS|j|| |r|j ||_ |j r,|j d|d|j d||ddS|js=|js8|d|_|j dSdSdS)NTzTask z% has errored out but its parent task z is already completed)message exceptionrC)rdiscardrrK set_result cancelledrPrrr-rr r call_exception_handlerr rr0rL)rrCr4s rr@zTaskGroup._on_task_dones D!!!  ! -dk -)..00 8&11$777 >>    Fnn ; F C     s # # #(8(@"D    ! ! # #  J - -L4LL#'#4LLL  //    F~ 'd&C '& KKMMM,0D )   $ $ & & & & &+ ' ' ' 'r) __name__ __module__ __qualname__rr$r*r9r=rGboolr-r0r@rrrr s & & & ( ( ( O$O$O$b)-d(@-@D@@@@2'2'2'2'2'rN)__all__rrrrrrYrrr[s -N'N'N'N'N'N'N'N'N'N'r