diff options
| author | Bernát Gábor <bgabor8@bloomberg.net> | 2020-02-04 14:51:00 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-02-04 14:51:00 +0000 |
| commit | 7a5d03fe15f1d467f7b224c528b95eccc080b2c1 (patch) | |
| tree | 7d1ccccac7eb588221fd3aa26c9d9227293ba179 /src/virtualenv/discovery | |
| parent | 786c3d0addb5d6b155dc73f8bd444bde00877045 (diff) | |
| download | virtualenv-7a5d03fe15f1d467f7b224c528b95eccc080b2c1.tar.gz | |
rewrite the documentation (#1519)
Diffstat (limited to 'src/virtualenv/discovery')
| -rw-r--r-- | src/virtualenv/discovery/builtin.py | 2 | ||||
| -rw-r--r-- | src/virtualenv/discovery/discover.py | 25 |
2 files changed, 23 insertions, 4 deletions
diff --git a/src/virtualenv/discovery/builtin.py b/src/virtualenv/discovery/builtin.py index e4e0ea0..c5f4883 100644 --- a/src/virtualenv/discovery/builtin.py +++ b/src/virtualenv/discovery/builtin.py @@ -15,7 +15,7 @@ from .py_spec import PythonSpec class Builtin(Discover): def __init__(self, options): - super(Builtin, self).__init__() + super(Builtin, self).__init__(options) self.python_spec = options.python @classmethod diff --git a/src/virtualenv/discovery/discover.py b/src/virtualenv/discovery/discover.py index 13e258f..17d404e 100644 --- a/src/virtualenv/discovery/discover.py +++ b/src/virtualenv/discovery/discover.py @@ -7,20 +7,39 @@ import six @six.add_metaclass(ABCMeta) class Discover(object): - def __init__(self): - self._has_run = False - self._interpreter = None + """Discover and provide the requested Python interpreter""" @classmethod def add_parser_arguments(cls, parser): + """Add CLI arguments for this discovery mechanisms. + + :param parser: the CLI parser + """ raise NotImplementedError + # noinspection PyUnusedLocal + def __init__(self, options): + """Create a new discovery mechanism. + + :param options: the parsed options as defined within :meth:`add_parser_arguments` + """ + self._has_run = False + self._interpreter = None + @abstractmethod def run(self): + """Discovers an interpreter. + + + :return: the interpreter ready to use for virtual environment creation + """ raise NotImplementedError @property def interpreter(self): + """ + :return: the interpreter as returned by :meth:`run`, cached + """ if self._has_run is False: self._interpreter = self.run() self._has_run = True |
