3

g                 @   s\   d dl mZ d dlmZ d dlmZ erHd dlmZmZm	Z	 e	dddZ
G dd	 d	eZd
S )    )contextmanager)	ExitStack)MYPY_CHECK_RUNNING)IteratorContextManagerTypeVar_TT)Z	covariantc                   s0   e Zd Z fddZedd Zdd Z  ZS )CommandContextMixInc                s    t t| j  d| _t | _d S )NF)superr	   __init___in_main_contextr   _main_context)self)	__class__ E/tmp/pip-unpacked-wheel-v59g9nu1/pip/_internal/cli/command_context.pyr      s    zCommandContextMixIn.__init__c             c   s<   | j  std| _ z| j d V  W d Q R X W d d| _ X d S )NTF)r   AssertionErrorr   )r   r   r   r   main_context   s    z CommandContextMixIn.main_contextc             C   s   | j s
t| jj|S )N)r   r   r   enter_context)r   context_providerr   r   r   r       s    
z!CommandContextMixIn.enter_context)__name__
__module____qualname__r   r   r   r   __classcell__r   r   )r   r   r	      s   r	   N)
contextlibr   pip._vendor.contextlib2r   pip._internal.utils.typingr   typingr   r   r   r   objectr	   r   r   r   r   <module>   s   