2 from abc import abstractmethod
\r
3 from typing import Any, Optional, TypeVar, Union, Pattern, Text, Tuple
\r
5 _T = TypeVar('_T', bound='Version')
\r
8 def __repr__(self) -> str: ...
\r
10 if sys.version_info >= (3,):
\r
11 def __eq__(self, other: object) -> bool: ...
\r
12 def __lt__(self: _T, other: Union[_T, str]) -> bool: ...
\r
13 def __le__(self: _T, other: Union[_T, str]) -> bool: ...
\r
14 def __gt__(self: _T, other: Union[_T, str]) -> bool: ...
\r
15 def __ge__(self: _T, other: Union[_T, str]) -> bool: ...
\r
18 def __init__(self, vstring: Optional[Text] = ...) -> None: ...
\r
20 def parse(self: _T, vstring: Text) -> _T: ...
\r
22 def __str__(self) -> str: ...
\r
23 if sys.version_info >= (3,):
\r
25 def _cmp(self: _T, other: Union[_T, str]) -> bool: ...
\r
28 def __cmp__(self: _T, other: Union[_T, str]) -> bool: ...
\r
30 class StrictVersion(Version):
\r
31 version_re: Pattern[str]
\r
32 version: Tuple[int, int, int]
\r
33 prerelease: Optional[Tuple[Text, int]]
\r
35 def __init__(self, vstring: Optional[Text] = ...) -> None: ...
\r
36 def parse(self: _T, vstring: Text) -> _T: ...
\r
37 def __str__(self) -> str: ...
\r
38 if sys.version_info >= (3,):
\r
39 def _cmp(self: _T, other: Union[_T, str]) -> bool: ...
\r
41 def __cmp__(self: _T, other: Union[_T, str]) -> bool: ...
\r
43 class LooseVersion(Version):
\r
44 component_re: Pattern[str]
\r
46 version: Tuple[Union[Text, int], ...]
\r
48 def __init__(self, vstring: Optional[Text] = ...) -> None: ...
\r
49 def parse(self: _T, vstring: Text) -> _T: ...
\r
50 def __str__(self) -> str: ...
\r
51 if sys.version_info >= (3,):
\r
52 def _cmp(self: _T, other: Union[_T, str]) -> bool: ...
\r
54 def __cmp__(self: _T, other: Union[_T, str]) -> bool: ...
\r