U e@sddlmZddlZddlmZejdkr srimportlib_metadata.c@s,eZdZdZdZeddZeddZdS) PluginLoaderNcCsNtjdkstdkr0tdd|j|dDStdd||iDS)N)r )rcss|]}|j|fVqdSr nameloadr errr rsz0PluginLoader.entry_points_for..)groupcss|]}|j|fVqdSr rrrrr rs)sys version_infoimportlib_metadata_versionrrselectgetclskeyrrr entry_points_forszPluginLoader.entry_points_forcCstjdkrtt_tjSr )r _ENTRY_POINTSrrrrr rs zPluginLoader.entry_points) __name__ __module__ __qualname___OPTIONSr$ classmethodr# staticmethodrrrrr rs  rc@sFeZdZddddZeddZddZd d Zd d Zd dZ dS)ComponentBuilderNone)returncCs<||_||_d|_||_|j|d|_||t|jdS)N)title) interpreterr _impl_classpossibleadd_argument_groupparseradd_selector_arg_parselist)selfr/r3rr1rrr __init__"s zComponentBuilder.__init__cCs|jdkr|||_|jSr )r(r#r rrr options*s  zComponentBuilder.optionscCstdSr )NotImplementedError)r6rchoicesrrr r40sz'ComponentBuilder.add_selector_arg_parsecCsHt||j}||jkr*d|j}t||j||_|||j|S)NzNo implementation for )getattrrr1r/ RuntimeErrorr0populate_selected_argparseapp_data)r6r8selectedmsgrrr handle_selected_arg_parse3s    z*ComponentBuilder.handle_selected_arg_parsecCs.d|jd||j_|j|j|j|dS)Nz options for  )rr3 descriptionr0Zadd_parser_argumentsr/)r6r?r>rrr r=<sz+ComponentBuilder.populate_selected_argparsecCs|||jSr )r0r/)r6r8rrr create@szComponentBuilder.createN) r%r&r'r7r)r8r4rAr=rDrrrr r+!s  r+) __future__rr collectionsrrimportlib.metadatarrrrtuplesplitrr+__all__rrrr s    $$