
    Che                         S r SSKrSSKrSSKJr  SSKJr  SSKJrJ	r	J
r
JrJrJr  SSKJr  SSKJr  SSKJr  S	S
KJrJrJr  SSKJr  SSKJr   " S S\5      r " S S\5      r\R<                  " \5        g)zAn in-process kernel    N)contextmanager)InteractiveShellABC)AnyEnumInstanceListTypedefault)IPythonKernel)
json_clean)ZMQInteractiveShell   )BackgroundSocketIOPubThread	OutStream   )INPROCESS_KEY)DummySocketc                     ^  \ rS rSr% Sr\" \" SSS95      r\" SSS9r	\
" 5       r\
" 5       r\
" 5       r\" SS9r\" \S	5      r\" \5      r\\S
'   \" \S	5      r\" S
5      S 5       r\" \5      r\\S'   \" S5      S 5       r\" \S	5      rU 4S jrU 4S jrS rS rS S jr \!S 5       r"S r#\" S5      S 5       r$\" S5      S 5       r%\" S5      S 5       r&\" S5      S 5       r'\" S5      S 5       r(Sr)U =r*$ )!InProcessKernel   zAn in-process kernel.z0ipykernel.inprocess.client.InProcessKernelClientT
allow_none)tkgtkwxqtqt4inliner   )default_value iopub_threadc                 P    [        U R                  5      nUR                  5         U$ N)r   _underlying_iopub_socketstart)selfthreads     oC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\ipykernel/inprocess/ipkernel.py_default_iopub_thread%InProcessKernel._default_iopub_thread8   s     T::;    iopub_socketc                 .    U R                   R                  $ r$   )r"   background_socketr'   s    r)   _default_iopub_socket%InProcessKernel._default_iopub_socket@   s      222r,   c                    > [         TU ]  " S0 UD6  U R                  R                  U R                  S/S9  U R
                  (       a  X R
                  l        gg)zInitialize the kernel.message_sent)namesNr!   )super__init__r%   observe_io_dispatchshellkernel)r'   traits	__class__s     r)   r7   InProcessKernel.__init__F   sK    "6"%%--d.?.?GW-X:: $JJ r,   c                    >#    U R                  5          [        TU ]	  XU5      I Sh  vN   SSS5        g N! , (       d  f       g= f7f)z&Override for temporary IO redirection.N)_redirected_ior6   execute_request)r'   streamidentparentr=   s       r)   rA   InProcessKernel.execute_requestN   s:       "')&@@@ #"@ #"s%   A	868	A	8
AA	c                 J    U R                   (       a  SU R                   l        gg)z1Override registration of dispatchers for streams.FN)r:   exit_nowr0   s    r)   r&   InProcessKernel.startS   s    ::"'DJJ r,   c                     g)z-The in-process kernel doesn't abort requests.Nr!   r0   s    r)   _abort_queuesInProcessKernel._abort_queuesX   s    r,   c                    S U l         [        R                  b  [        R                  R                  5         [        R                  b  [        R                  R                  5         [        [        XS95      nU R                  c   eU R                  R                  SXS5      nU R                   HE  nUc   eUR                  R                  US   S   :X  d  M*  UR                  R                  U5          O   [        R                  " S5        gU R                   c)  UR                  R                  5         U R                   c  M)  U R                   $ )N)promptpasswordinput_requestheadersessionz'No frontend found for raw_input request )raw_input_strsysstdoutflushstderrr   dictrQ   msg	frontendsstdin_channelcall_handlersloggingerrorprocess_events)r'   rM   rC   rD   rN   contentrY   frontends           r)   _input_requestInProcessKernel._input_request[   s   !::!JJ::!JJ TCD||'''ll@H'''''6(+;I+FF&&44S9	 ' MMCD   (""113   (!!!r,   c              #     #    [         R                  [         R                  p! U R                  U R                  s[         l        [         l        Sv   Xs[         l        [         l        g! Xs[         l        [         l        f = f7f)z&Temporarily redirect IO to the kernel.N)rT   rU   rW   )r'   
sys_stdout
sys_stderrs      r)   r@   InProcessKernel._redirected_ioy   sR      "%SZZJ	<%)[[$++"CJ
%/"CJ
Z"CJ
s    B/A) B)BBc                 .   U R                   R                  c   eU R                  c   eU R                  R                  U R                   R                  R                  SS9u  p#U R
                   H#  nUc   eUR                  R                  U5        M%     g)z/Called when a message is sent to the IO socket.NF)copy)r-   	io_threadrQ   recvsocketrZ   iopub_channelr\   )r'   changerC   rY   ra   s        r)   r9   InProcessKernel._io_dispatch   s      **666||'''\\&&t'8'8'B'B'I'IPU&V
H'''""005 'r,   logc                 6    [         R                  " [        5      $ r$   )r]   	getLogger__name__r0   s    r)   _default_logInProcessKernel._default_log   s      **r,   rQ   c                 $    SSK Jn  U" U [        S9$ )Nr   )Session)rD   key)jupyter_client.sessionrw   r   )r'   rw   s     r)   _default_session InProcessKernel._default_session   s    2d66r,   shell_classc                     [         $ r$   )InProcessInteractiveShellr0   s    r)   _default_shell_class$InProcessKernel._default_shell_class   s    ((r,   rU   c                 B    [        U R                  U R                  SSS9$ )NrU   Fwatchfdr   rQ   r"   r0   s    r)   _default_stdoutInProcessKernel._default_stdout       t'8'8(ERRr,   rW   c                 B    [        U R                  U R                  SSS9$ )NrW   Fr   r   r0   s    r)   _default_stderrInProcessKernel._default_stderr   r   r,   )rS   )F)+rs   
__module____qualname____firstlineno____doc__r   r   rZ   r   guir   rS   rU   rW   r	   r|   r   r%   r   r"   __annotations__shell_streamr
   r*   r   r-   r1   stdin_socketr7   rA   r&   rJ   rb   r   r@   r9   rt   rz   r   r   r   __static_attributes____classcell__r=   s   @r)   r   r      su    XP]abcI 9
RCEMUFUF $'K'R8 ( 5L+5K,L^ 
 &..>%?L"?^3 3 K,L%A
(
<"< < <6 U^+ + Y7 7
 ]) ) XS S XS Sr,   r   c                   d   ^  \ rS rSr% Sr\" SSS9r\\S'   SS jr	SU 4S jjr
SU 4S	 jjrS
rU =r$ )r~      z An in-process interactive shell.z,ipykernel.inprocess.ipkernel.InProcessKernelTr   r;   c                 J    U(       d  U R                   R                  nXl        g)z&Enable GUI integration for the kernel.N)r;   r   active_eventloop)r'   r   s     r)   
enable_gui$InProcessInteractiveShell.enable_gui   s    ++//C #r,   c                 \   > U(       d  U R                   R                  n[        TU ]  U5      $ )z-Enable matplotlib integration for the kernel.)r;   r   r6   enable_matplotlib)r'   r   r=   s     r)   r   +InProcessInteractiveShell.enable_matplotlib   s#    ++//Cw(--r,   c                 \   > U(       d  U R                   R                  n[        TU ]  X5      $ )z"Activate pylab support at runtime.)r;   r   r6   enable_pylab)r'   r   
import_allr=   s      r)   r   &InProcessInteractiveShell.enable_pylab   s#    ++//Cw#C44r,   )r   r$   )NT)rs   r   r   r   r   r   r;   r   r   r   r   r   r   r   r   s   @r)   r~   r~      s0    *&64FO $.5 5r,   r~   )r   r]   rT   
contextlibr   IPython.core.interactiveshellr   	traitletsr   r   r   r   r	   r
   ipykernel.ipkernelr   ipykernel.jsonutilr   ipykernel.zmqshellr   iostreamr   r   r   	constantsr   rl   r   r   r~   registerr!   r,   r)   <module>r      s`    
  
 % = > > , ) 2 ? ? $ JSm JSd5 3 5<   6 7r,   