U þ üe•ã@s6ddlmZddlmZmZGdd„deƒZdgZdS)é)Ú annotations)ÚABCÚabstractmethodc@sBeZdZdZedd„ƒZddœdd„Zedd „ƒZe d d „ƒZ d S) ÚDiscoverz6Discover and provide the requested Python interpreter.cCst‚dS)zi Add CLI arguments for this discovery mechanisms. :param parser: the CLI parser N©ÚNotImplementedError)ÚclsÚparser©r úK/opt/hc_python/lib/python3.8/site-packages/virtualenv/discovery/discover.pyÚadd_parser_arguments szDiscover.add_parser_argumentsÚNone)ÚreturncCsd|_d|_|j|_dS)zŽ Create a new discovery mechanism. :param options: the parsed options as defined within :meth:`add_parser_arguments` FN)Ú_has_runÚ _interpreterÚenvZ_env)ÚselfÚoptionsr r r Ú__init__szDiscover.__init__cCst‚dS)z{ Discovers an interpreter. :return: the interpreter ready to use for virtual environment creation Nr©rr r r Úrunsz Discover.runcCs |jdkr| ¡|_d|_|jS)z;:return: the interpreter as returned by :meth:`run`, cachedFT)rrrrr r r Ú interpreter%s  zDiscover.interpreterN) Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú classmethodr rrrÚpropertyrr r r r rs   rN)Ú __future__rÚabcrrrÚ__all__r r r r Ús )ÿ