
    f                     D    d Z ddlZddlZ G d de      Z G d de      Zy)zX
Context managers for adding things to sys.path temporarily.

Authors:

* Brian Granger
    Nc                   "    e Zd ZdZd Zd Zd Zy)appended_to_syspathzv
    Deprecated since IPython 8.1, no replacements.

    A context for appending a directory to sys.path for a second.c                 J    t        j                  dt        d       || _        y )NzN`appended_to_syspath` is deprecated since IPython 8.1, and has no replacements   )
stacklevel)warningswarnDeprecationWarningdirselfr   s     W/var/www/cvtools/html/venv/lib/python3.12/site-packages/IPython/utils/syspathcontext.py__init__zappended_to_syspath.__init__   s     \	

     c                     | j                   t        j                  vr1t        j                  j                  | j                          d| _        y d| _        y )NTF)r   syspathappendaddedr   s    r   	__enter__zappended_to_syspath.__enter__#   s4    88388#HHOODHH%DJDJr   c                     | j                   r+	 t        j                  j                  | j                         yy# t
        $ r Y yw xY wNFr   r   r   remover   
ValueErrorr   typevalue	tracebacks       r   __exit__zappended_to_syspath.__exit__*   >    ::)      )9 	AAN__name__
__module____qualname____doc__r   r   r!    r   r   r   r      s    E
r   r   c                   "    e Zd ZdZd Zd Zd Zy)prepended_to_syspathz>A context for prepending a directory to sys.path for a second.c                     || _         y )N)r   r   s     r   r   zprepended_to_syspath.__init__6   s	    r   c                     | j                   t        j                  vr2t        j                  j                  d| j                          d| _        y d| _        y )Nr   TF)r   r   r   insertr   r   s    r   r   zprepended_to_syspath.__enter__9   s6    88388#HHOOAdhh'DJDJr   c                     | j                   r+	 t        j                  j                  | j                         yy# t
        $ r Y yw xY wr   r   r   s       r   r!   zprepended_to_syspath.__exit__@   r"   r#   Nr$   r)   r   r   r+   r+   3   s    Hr   r+   )r(   r   r   objectr   r+   r)   r   r   <module>r1      s*     & <6 r   