
    ^h                     R    S r SSKrSSKJr  SSKrSSKJr  SSKJr   " S S\5      r	g)	zA thread for a subshell.    N)Any   )
SocketPair)
BaseThreadc                   b   ^  \ rS rSrSrS\S\R                  \   4U 4S jjr	SU 4S jjr
SrU =r$ )	SubshellThread   z.A thread for a subshell.

.. versionadded:: 7
subshell_idcontextc                    > [         TU ]  " SSSU 30UD6  [        X!5      U l        [        X!S-   5      U l        SU l        [        R                  " 5       U l        g)zInitialize the thread.namez	subshell-z-reverseFN )	super__init__r   shell_channel_to_subshellsubshell_to_shell_channelabortingasyncioLockasyncio_lock)selfr
   r   kwargs	__class__s       L/home/james-whalen/.local/lib/python3.13/site-packages/ipykernel/subshell.pyr   SubshellThread.__init__   sW     	B	+7B6B)3G)I&)3G:=U)V& #LLN    c                    >  [         TU ]  5         U R                  R                  5         U R                  R                  5         g! U R                  R                  5         U R                  R                  5         f = f)zRun the thread.N)r   runr   closer   )r   r   s    r   r   SubshellThread.run#   s]    	3GKM**002**002 **002**002s   A 6A<)r   r   r   r   )returnN)__name__
__module____qualname____firstlineno____doc__strzmqContextr   r   r   __static_attributes____classcell__)r   s   @r   r   r      s2    
++ S!+"3 3r   r   )
r&   r   typingr   r(   socket_pairr   threadr   r   r   r   r   <module>r/      s#       
 # 3Z 3r   