
    F\hz                        S SK Jr  S SKJrJr  S SKrSr\(       a.  S SKJr  S SK	J
r
  S SKJr   " S S	\5      r " S
 S\5      rSSKJr  SS jrg)    )annotations)	dataclassfieldNF)Thread)TracebackType)Protocolc                  d    \ rS rSr\SS j5       r\S	S j5       r\S
S j5       r\SS j5       rSr	g)ExceptHookArgs   c                    g N selfs    1/usr/lib/python3.13/_pyrepl/_threading_handler.pyexc_typeExceptHookArgs.exc_type   s    36    c                    g r   r   r   s    r   	exc_valueExceptHookArgs.exc_value   s    58r   c                    g r   r   r   s    r   exc_tracebackExceptHookArgs.exc_traceback   s    9<r   c                    g r   r   r   s    r   threadExceptHookArgs.thread   s    +.r   r   N)returnztype[BaseException])r   zBaseException | None)r   zTracebackType | None)r   zThread | None)
__name__
__module____qualname____firstlineno__propertyr   r   r   r   __static_attributes__r   r   r   r
   r
      s:    	6 
6	8 
8	< 
<	. 
.r   r
   c                  (    \ rS rSrSS jrSS jrSrg)ShowExceptions   c                    g r   r   r   s    r   __call__ShowExceptions.__call__   s    3r   c                    g r   r   r   ss     r   addShowExceptions.add   s    sr   r   Nr   intr-   strr   None)r   r    r!   r"   r)   r.   r$   r   r   r   r&   r&      s    &*r   r&      )Readerc                |   ^ ^ SS K m[         " U U4S jS5      5       nU" 5       nUT l        UR                  Tl        g )Nr   c                     > \ rS rSr% \"  YR
                  S9rS\S'   \" \S9r	S\S'   SU 4S jjr
SS jrSU 4S	 jjrSS
 jrSrg)1install_threading_hook.<locals>.ExceptHookHandler!   )default_factoryzthreading.Locklockz	list[str]messagesc                  > SnU R                      U R                  (       d
   S S S 5        gTR                  5         U R                   H  nUS-  nU(       d  M  [        U5        M     U R                  R	                  5         TR
                  R                  S5        TR                  5         S S S 5        U$ ! , (       d  f       U$ = f)Nr   r5   zctrl-c)r<   r=   restoreprintclearscheduled_commandsappendprepare)r   counttbreaders      r   show6install_threading_hook.<locals>.ExceptHookHandler.show&   s    E}}   --BQJErb	 ( ##%))00:   L  Ls   B7)B7AB77
Cc                    U R                      U R                  R                  U5        S S S 5        g ! , (       d  f       g = fr   )r<   r=   rC   r,   s     r   r.   5install_threading_hook.<locals>.ExceptHookHandler.add5   s%    $$Q' s	   2
A c                (  > [         R                  " UR                  UR                  UR                  TR
                  S9nUR                  (       a  SUR                  R                   S3OSnUSR                  U5      -   nU R                  U5        g )N)colorizez
Exception in z:

 )
	tracebackformat_exceptionr   r   r   can_colorizer   namejoinr.   )r   argslinesprerF   rG   s        r   	exception;install_threading_hook.<locals>.ExceptHookHandler.exception9   st    .."",,	E >B[[ODKK$4$4#5S9dCrwwu~%BHHRLr   c                "    U R                  5       $ r   )rH   r   s    r   r)   :install_threading_hook.<locals>.ExceptHookHandler.__call__D   s    99;r   r   Nr0   r2   )rU   r
   r   r4   )r   r    r!   r"   r   Lockr<   __annotations__listr=   rH   r.   rX   r)   r$   )rG   	threadings   r   ExceptHookHandlerr9   !   s9    $Y^^DnD#D9)9		(			r   r`   )r_   r   threading_hookrX   
excepthook)rG   r`   handlerr_   s   `  @r   install_threading_hookrd      s>    # # #L  !G#F",,Ir   )rG   r6   r   r4   )
__future__r   dataclassesr   r   rP   TYPE_CHECKINGr_   r   typesr   typingr   r
   r&   rG   r6   rd   r   r   r   <module>rj      sC    " (   #/ /+ + ,-r   