a :i@sddlZddlmZejdkr0ddlmZdZn4ddlmZmZe dded  d dd DZGd d d Z Gddde Z d dgZ dS)N) OrderedDict)) entry_points)rversionccs|]}t|VqdSN)int).0irr>/usr/lib/python3.9/site-packages/virtualenv/run/plugin/base.py r importlib_metadata.c@s,eZdZdZdZeddZeddZdS) PluginLoaderNcCsRtjdkstdkr0tdd|j|dDStdd||iDSdS)N)r )rcss|]}|j|fVqdSrnameloadr errr r rz0PluginLoader.entry_points_for..)groupcss|]}|j|fVqdSrrrrrr r r)sys version_infoimportlib_metadata_versionrrZselectgetclskeyrrr entry_points_forszPluginLoader.entry_points_forcCstjdurtt_tjSr)r _ENTRY_POINTSrrrrr rs zPluginLoader.entry_points) __name__ __module__ __qualname___OPTIONSr# classmethodr" staticmethodrrrrr rs  rc@s@eZdZddZeddZddZddZd d Zd d Z d S)ComponentBuildercCs<||_||_d|_||_|j|d|_||t|jdS)N)title) interpreterr _impl_classpossibleadd_argument_groupparseradd_selector_arg_parselist)selfr,r0rr.rrr __init__!s zComponentBuilder.__init__cCs|jdur|||_|jSr)r'r"rrrr options)s  zComponentBuilder.optionscCstdSr)NotImplementedError)r3rchoicesrrr r1/sz'ComponentBuilder.add_selector_arg_parsecCsDt||j}||jvr&td|j|j||_|||j|S)NzNo implementation for )getattrrr. RuntimeErrorr,r-populate_selected_argparseapp_data)r3r5selectedrrr handle_selected_arg_parse2s    z*ComponentBuilder.handle_selected_arg_parsecCs.d|jd||j_|j|j|j|dS)Nz options for  )rr0 descriptionr-Zadd_parser_argumentsr,)r3r<r;rrr r::sz+ComponentBuilder.populate_selected_argparsecCs|||jSr)r-r,)r3r5rrr create>szComponentBuilder.createN) r$r%r&r4r(r5r1r=r:r@rrrr r* s r*)r collectionsrrimportlib.metadatarrrrtuplesplitrr*__all__rrrr s   $#