Format: application/x-python-code
⬇ Download File (2.8 KB)
   1  o
   2  
   3  ��h��@sddZddlZddlmZddlmZGdd�de�Ze�Z	Gdd�de�Z
   4  e
   5  �ZGd	d
   6  �d
   7  e�ZdS)zF
   8  A context manager for managing things injected into :mod:`builtins`.
   9  �N)�Configurable)�Instancec@�eZdZdS)�__BuiltinUndefinedN��__name__�
  10  __module__�__qualname__�r
  11  r
  12  �Oc:\Users\shubh\Videos\agent\nova\Lib\site-packages\IPython/core/builtin_trap.pyr
  13  �rc@r)�
  14  __HideBuiltinNrr
  15  r
  16  r
  17  rr
  18  rr
  19  csZeZdZeddd�Zd�fdd�	Zdd�Zd	d
  20  �Zdd�Zd
  21  d�Z	dd�Z
  22  dd�Z�ZS)�BuiltinTrapz1IPython.core.interactiveshell.InteractiveShellABCT)�
  23  allow_noneNcs<tt|�j|dd�i|_d|_||_tt|jjd�|_dS)N)�shell�configr)�exit�quit�get_ipython)	�superr�__init__�_orig_builtins�
  24  _nested_levelr�HideBuiltinr�
  25  auto_builtins)�selfr��	__class__r
  26  rrs�zBuiltinTrap.__init__cCs$|jdkr	|��|jd7_|S)Nr�)r�activate)rr
  27  r
  28  r�	__enter__'�
  29  zBuiltinTrap.__enter__cCs$|jdkr	|��|jd8_dS)NrF)r�
  30  deactivate)r�type�value�	tracebackr
  31  r
  32  r�__exit__.r!zBuiltinTrap.__exit__cCsPtj}|�|t�}|tur|tur||j|<||=dSdS||j|<|||<dS)z$Add a builtin and save the original.N)�builtin_mod�__dict__�get�BuiltinUndefinedrr)r�keyr$Zbdict�origr
  33  r
  34  r�add_builtin5s
  35  
  36  �
  37  zBuiltinTrap.add_builtincCs"|tur
  38  tj|=dS|tj|<dS)z0Remove an added builtin and re-set the original.N)r*r'r()rr+r,r
  39  r
  40  r�remove_builtinAszBuiltinTrap.remove_builtincCs(|j}|j��D]	\}}|||�qdS)z6Store ipython references in the __builtin__ namespace.N)r-r�items)rr-�name�funcr
  41  r
  42  rrHs�zBuiltinTrap.activatecCs8|j}|j��D]	\}}|||�q|j��d|_dS)z~Remove any builtins which might have been added by add_builtins, or
  43          restore overwritten ones to their previous values.FN)r.rr/�clearZ_builtins_added)rr.r+�valr
  44  r
  45  rr"Os
  46  
  47  
  48  zBuiltinTrap.deactivate)N)
  49  rrr	rrrr r&r-r.rr"�
  50  __classcell__r
  51  r
  52  rrrs�r)
  53  �__doc__�builtinsr'Ztraitlets.config.configurablerZ	traitletsr�objectrr*r
  54  rrr
  55  r
  56  r
  57  r�<module>s