Minor improvements to typing docs (#104465)

This commit is contained in:
Jelle Zijlstra 2023-05-14 04:53:15 -07:00 committed by GitHub
parent 178153c9a6
commit 2f7b5e458e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -19,7 +19,7 @@
This module provides runtime support for type hints. The most fundamental This module provides runtime support for type hints. The most fundamental
support consists of the types :data:`Any`, :data:`Union`, :data:`Callable`, support consists of the types :data:`Any`, :data:`Union`, :data:`Callable`,
:class:`TypeVar`, and :class:`Generic`. For a full specification, please see :class:`TypeVar`, and :class:`Generic`. For a specification, please see
:pep:`484`. For a simplified introduction to type hints, see :pep:`483`. :pep:`484`. For a simplified introduction to type hints, see :pep:`483`.
@ -592,7 +592,7 @@ The module defines the following classes, functions and decorators.
when the checked program targets Python 3.9 or newer. when the checked program targets Python 3.9 or newer.
The deprecated types will be removed from the :mod:`typing` module The deprecated types will be removed from the :mod:`typing` module
in the first Python version released 5 years after the release of Python 3.9.0. no sooner than the first Python version released 5 years after the release of Python 3.9.0.
See details in :pep:`585`*Type Hinting Generics In Standard Collections*. See details in :pep:`585`*Type Hinting Generics In Standard Collections*.
@ -1291,6 +1291,8 @@ These are not used in annotations. They are building blocks for creating generic
U = TypeVar('U', bound=str|bytes) # Can be any subtype of the union str|bytes U = TypeVar('U', bound=str|bytes) # Can be any subtype of the union str|bytes
V = TypeVar('V', bound=SupportsAbs) # Can be anything with an __abs__ method V = TypeVar('V', bound=SupportsAbs) # Can be anything with an __abs__ method
.. _typing-constrained-typevar:
Using a *constrained* type variable, however, means that the ``TypeVar`` Using a *constrained* type variable, however, means that the ``TypeVar``
can only ever be solved as being exactly one of the constraints given:: can only ever be solved as being exactly one of the constraints given::
@ -1550,7 +1552,7 @@ These are not used in annotations. They are building blocks for creating generic
.. data:: AnyStr .. data:: AnyStr
``AnyStr`` is a :class:`constrained type variable <TypeVar>` defined as ``AnyStr`` is a :ref:`constrained type variable <typing-constrained-typevar>` defined as
``AnyStr = TypeVar('AnyStr', str, bytes)``. ``AnyStr = TypeVar('AnyStr', str, bytes)``.
It is meant to be used for functions that may accept any kind of string It is meant to be used for functions that may accept any kind of string
@ -2112,7 +2114,7 @@ Other concrete types
Python 2 is no longer supported, and most type checkers also no longer Python 2 is no longer supported, and most type checkers also no longer
support type checking Python 2 code. Removal of the alias is not support type checking Python 2 code. Removal of the alias is not
currently planned, but users are encouraged to use currently planned, but users are encouraged to use
:class:`str` instead of ``Text`` wherever possible. :class:`str` instead of ``Text``.
Abstract Base Classes Abstract Base Classes
--------------------- ---------------------