HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: xnsbb3110 (1041)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/lib/python3.10/dist-packages/virtualenv/run/plugin/__pycache__/creators.cpython-310.pyc
o

3�h*�@s�ddlmZddlmZmZddlmZmZddlm	Z	ddl
mZddlm
Z
er2ddlmZmZGd	d
�d
e�ZGdd�de
�Zd
dgZd
S)�)�annotations)�OrderedDict�defaultdict)�
TYPE_CHECKING�
NamedTuple)�Describe)�VirtualenvBuiltin�)�ComponentBuilder)�Creator�CreatorMetac@s.eZdZUded<ded<ded<ded<d	S)
�CreatorInfozdict[str, type[Creator]]�key_to_classzdict[str, CreatorMeta]�key_to_metaztype[Describe] | None�describe�str�builtin_keyN)�__name__�
__module__�__qualname__�__annotations__�rr�I/usr/local/lib/python3.10/dist-packages/virtualenv/run/plugin/creators.pyr
s

r
csReZdZd�fdd�Zedd��Zdd�Zed	d
��Zdd�Z	�fd
d�Z
�ZS)�CreatorSelector�return�Nonecs.|�|�\}|_|_|_t��||d|�dS)N�creator)�for_interpreterrrr�super�__init__)�self�interpreter�parser�creators��	__class__rrrszCreatorSelector.__init__cCst�iddf\}}}}tt�}|�d���D]L\}}|dkr$d}	t|	��|�|�}
|
rR|
jr7||
j�|�nd|vrJt	|t
�rJ|}||d<|
|d<|||<|
||<|durbt	|t�rb|�|�rb|}q|s�|rwdd�|��D�}td�
|���d|��}	t|	��t||||d�S)	Nzvirtualenv.create�builtinz"builtin creator is a reserved namecSs.g|]\}}|�dd�dd�|D�����qS)z for creators z, css�|]}|jVqdS�N)r)�.0�irrr�	<genexpr>2s�z=CreatorSelector.for_interpreter.<locals>.<listcomp>.<genexpr>)�join)r(�k�vrrr�
<listcomp>2s.z3CreatorSelector.for_interpreter.<locals>.<listcomp>�
z!No virtualenv implementation for )rrrr)rr�list�options�items�RuntimeError�
can_create�error�append�
issubclassrr�can_describer+r
)�clsr!rrrr�errors�key�
creator_class�msg�meta�rowsrrrrs>
�
�zCreatorSelector.for_interpreterc	CsXt|dd�d�}|�|�}|jjd|��||dd|jdurdnd|j�d	���d
�dS)NcSs|dkrdSdS)Nr&rr	r)�arrr�<lambda>?sz8CreatorSelector.add_selector_arg_parse.<locals>.<lambda>)r;z--Fzcreate environment via�z (builtin = �))�choices�default�required�help)�sorted�_get_defaultr"�add_argumentr)r �namerD�
default_valuerrr�add_selector_arg_parse=s
 
�z&CreatorSelector.add_selector_arg_parsecCstt|��Sr')�next�iter)rDrrrrIIszCreatorSelector._get_defaultcCs6d|j�d|��|j_|j�|j|j|j||�dS)Nzoptions for � )rKr"�description�_impl_class�add_parser_argumentsr!r)r �selected�app_datarrr�populate_selected_argparseMs z*CreatorSelector.populate_selected_argparsecs<|jt||j�|_t|jt�s|�||j�|_t	��
|�Sr')r�getattrrKr>r7rRrrr!r�create)r r1r$rrrXQszCreatorSelector.create)rr)rrrr�classmethodrrM�staticmethodrIrVrX�
__classcell__rrr$rrs
!
rN)�
__future__r�collectionsrr�typingrr�virtualenv.create.describer�4virtualenv.create.via_global_ref.builtin.builtin_wayr�baser
�virtualenv.create.creatorrrr
r�__all__rrrr�<module>sC�