<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
B
    a                 @   s   d dl mZmZ d dlZd dlmZ ejdkr@d dlmZ dZ	n4d dl
mZmZ edd	 ed
ddd D Z	G dd deZG dd deZdS )    )absolute_importunicode_literalsN)OrderedDict)      )entry_points )r   versionc             c   s   | ]}t |V  qd S )N)int).0ir   r   K/opt/alt/python37/lib/python3.7/site-packages/virtualenv/run/plugin/base.py	<genexpr>   s    r   importlib_metadata.   c               @   s,   e Zd ZdZdZedd Zedd ZdS )PluginLoaderNc             C   sR   t jdkstdkr0tdd |  j|dD S tdd |  |i D S d S )N)r   
   )r      c             s   s   | ]}|j | fV  qd S )N)nameload)r   er   r   r   r      s    z0PluginLoader.entry_points_for.<locals>.<genexpr>)groupc             s   s   | ]}|j | fV  qd S )N)r   r   )r   r   r   r   r   r      s    )sysversion_infoimportlib_metadata_versionr   r   selectget)clskeyr   r   r   entry_points_for   s    zPluginLoader.entry_points_forc               C   s   t jd krt t _t jS )N)r   _ENTRY_POINTSr   r   r   r   r   r      s    
zPluginLoader.entry_points)	__name__
__module____qualname___OPTIONSr!   classmethodr    staticmethodr   r   r   r   r   r      s   r   c               @   s@   e Zd Zdd Zedd Zdd Zdd Zd	d
 Zdd Z	dS )ComponentBuilderc             C   s<   || _ || _d | _|| _|j|d| _| |t| j d S )N)title)interpreterr   _impl_classpossibleadd_argument_groupparseradd_selector_arg_parselist)selfr*   r.   r   r,   r   r   r   __init__#   s    zComponentBuilder.__init__c             C   s   | j d kr| || _ | j S )N)r%   r    )r   r   r   r   r   options+   s    
zComponentBuilder.optionsc             C   s   t d S )N)NotImplementedError)r1   r   choicesr   r   r   r/   1   s    z'ComponentBuilder.add_selector_arg_parsec             C   sD   t || j}|| jkr&td| j| j| | _| ||j |S )NzNo implementation for {})	getattrr   r,   RuntimeErrorformatr*   r+   populate_selected_argparseapp_data)r1   r3   selectedr   r   r   handle_selected_arg_parse4   s    
z*ComponentBuilder.handle_selected_arg_parsec             C   s*   d | j|| j_| j| j| j| d S )Nzoptions for {} {})r8   r   r.   descriptionr+   Zadd_parser_argumentsr*   )r1   r;   r:   r   r   r   r9   <   s    z+ComponentBuilder.populate_selected_argparsec             C   s   |  || jS )N)r+   r*   )r1   r3   r   r   r   create@   s    zComponentBuilder.createN)
r"   r#   r$   r2   r&   r3   r/   r<   r9   r>   r   r   r   r   r(   "   s   r(   )
__future__r   r   r   collectionsr   r   Zimportlib.metadatar   r   r   r	   tuplesplitobjectr   r(   r   r   r   r   <module>   s   
$