Make all single-constraint TypeVars use bound= insteads (plus hack) (#1118)

Another attempt for #804, to unblock python/mypy#2626.
There's a work-around here for python/mypy#1551.
This commit is contained in:
Guido van Rossum
2017-03-29 14:59:24 -07:00
committed by GitHub
parent 7c413c904d
commit 1ea3d2de57
2 changed files with 6 additions and 5 deletions

View File

@@ -9,7 +9,7 @@ from enum import Enum
import sys
mm = MutableMapping[str, Any]
_D = TypeVar('_D', mm)
_D = TypeVar('_D', bound=mm)
if sys.version_info >= (3,):
_Path = str
else:

View File

@@ -12,14 +12,15 @@ from contextlib import ContextManager
_T = TypeVar('_T')
_FT = TypeVar('_FT', Callable[[Any], Any])
_FT = TypeVar('_FT', bound=Callable[[Any], Any])
_E = TypeVar('_E', bound=Exception)
def skip(reason: str) -> Callable[[_FT], _FT]: ...
def skipIf(condition: object, reason: str) -> Callable[[_FT], _FT]: ...
def skipUnless(condition: object, reason: str) -> Callable[[_FT], _FT]: ...
def expectedFailure(func: _FT) -> _FT: ...
# TODO: Once python/mypy#1551 is fixed, the following need _FT instead of Any
def skip(reason: str) -> Callable[[Any], Any]: ...
def skipIf(condition: object, reason: str) -> Callable[[Any], Any]: ...
def skipUnless(condition: object, reason: str) -> Callable[[Any], Any]: ...
class SkipTest(Exception):
def __init__(self, reason: str) -> None: ...