File: //usr/local/lib/python3.7/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-37.pyc
B
L��g" � @ s� d Z ddlZddlZddlZddlmZ ddlmZmZm Z m
Z
ddlmZ ddl
mZmZ ddlmZ dd�d d
�Ze e eee e
e d�dd
�Zeeee d�dd�ZdS )zBLogic that powers autocompletion installed by ``pip completion``.
� N)�chain)�Any�Iterable�List�Optional)�create_main_parser)�
commands_dict�create_command)�get_default_environment)�returnc s dt jkrdS t jd �� dd� �tt jd �} y�| d � W n tk
rZ d� Y nX t� }tt�}g }d}x�D ]}||krx|}P qxW |dk �rV|dkr�t� d� � �
d� o�|d k}|�rt� }� �� ���fd
d�|j
dd
�D �}|�rx|D ]} t| � q�W t� d� � �
d� �o(|dk}
|
�rXxt� d�D ]}t|� �q<W t� d� t|�}x>|jjD ]2��jtjk�rj|�fdd��j�j D �7 }�qjW dd� �d| d � D ���fdd�|D �}� fdd�|D �}t�| |jj�}
|
�rt� |
�}dd� |D �}x�|D ]>}|d }|d �rF|d dd� dk�rF|d7 }t|� �qW n�dd� |jD �}|�|j� t�|�}� �
d��r�xN|D ]$��jtjk�r�|�j�j 7 }�q�W n t�| |�}
|
�r�tt� |
��}td�� fdd�|D ��� t� d� dS )z:Entry Point for completion of main and subcommand options.�PIP_AUTO_COMPLETEN�
COMP_WORDS� �
COMP_CWORD� �help�-)�show� uninstallc s0 g | ](}|j ���r|j � d d� kr|j �qS )r N)�canonical_name�
startswith)�.0�dist)�cwords�lc� �D/tmp/pip-unpacked-wheel-hv55ucu3/pip/_internal/cli/autocompletion.py�
<listcomp>3 s z autocomplete.<locals>.<listcomp>T)�
local_only�install�pathc s g | ]}|� j f�qS r )�nargs)r �opt_str)�optr r r K s c S s g | ]}|� d �d �qS )�=r )�split)r �xr r r r O s c s g | ]\}}|� kr||f�qS r r )r r&