a
    hbòfø  ã                   @   sB   d dl mZmZ d dlmZmZmZ eddd�ZG dd„ dƒZdS )	é    )Ú	ExitStackÚcontextmanager)ÚContextManagerÚIteratorÚTypeVarÚ_TT)Ú	covariantc                       sL   e Zd Zddœ‡ fdd„Zeed dœdd„ƒZee edœdd	„Z	‡  Z
S )
ÚCommandContextMixInN)Úreturnc                    s   t ƒ  ¡  d| _tƒ | _d S )NF)ÚsuperÚ__init__Ú_in_main_contextr   Ú_main_context©Úself©Ú	__class__© ú^/home/httpd/docs/test/DocsMgr/lib/python3.9/site-packages/pip/_internal/cli/command_context.pyr      s    
zCommandContextMixIn.__init__c                 c   sT   | j r
J ‚d| _ z6| j� d V  W d   ƒ n1 s40    Y  W d| _ nd| _ 0 d S )NTF)r   r   r   r   r   r   Úmain_context   s    
&z CommandContextMixIn.main_context)Úcontext_providerr
   c                 C   s   | j s
J ‚| j |¡S )N)r   r   Úenter_context)r   r   r   r   r   r      s    
z!CommandContextMixIn.enter_context)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   Ú__classcell__r   r   r   r   r	      s   
r	   N)	Ú
contextlibr   r   Útypingr   r   r   r   r	   r   r   r   r   Ú<module>   s   