1
0
Fork 0
python-docs-fr/library/typing.po

1167 lines
37 KiB
Plaintext
Raw Normal View History

2018-07-04 09:06:45 +00:00
# Copyright (C) 2001-2018, Python Software Foundation
2018-07-04 09:08:42 +00:00
# For licence information, see README file.
2016-10-30 09:46:26 +00:00
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n"
2019-10-09 16:10:12 +00:00
"POT-Creation-Date: 2019-10-09 17:54+0200\n"
2016-10-30 09:46:26 +00:00
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
2018-07-04 09:14:25 +00:00
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
2017-05-23 22:40:56 +00:00
"Language: fr\n"
2016-10-30 09:46:26 +00:00
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../Doc/library/typing.rst:2
msgid ":mod:`typing` --- Support for type hints"
msgstr ""
#: ../Doc/library/typing.rst:9
msgid "**Source code:** :source:`Lib/typing.py`"
msgstr "**Code source :** :source:`Lib/typing.py`"
#: ../Doc/library/typing.rst:13
msgid ""
2019-10-09 16:10:12 +00:00
"The Python runtime does not enforce function and variable type annotations. "
"They can be used by third party tools such as type checkers, IDEs, linters, "
"etc."
2017-04-02 20:14:06 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:19
2017-04-02 20:14:06 +00:00
msgid ""
2019-09-04 09:35:23 +00:00
"This module provides runtime support for type hints as specified by :pep:"
"`484`, :pep:`526`, :pep:`544`, :pep:`586`, :pep:`589`, and :pep:`591`. The "
"most fundamental support consists of the types :data:`Any`, :data:`Union`, :"
"data:`Tuple`, :data:`Callable`, :class:`TypeVar`, and :class:`Generic`. For "
"full specification please see :pep:`484`. For a simplified introduction to "
"type hints see :pep:`483`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:27
2016-10-30 09:46:26 +00:00
msgid ""
"The function below takes and returns a string and is annotated as follows::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:32
2016-10-30 09:46:26 +00:00
msgid ""
"In the function ``greeting``, the argument ``name`` is expected to be of "
"type :class:`str` and the return type :class:`str`. Subtypes are accepted as "
"arguments."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:37
2016-10-30 09:46:26 +00:00
msgid "Type aliases"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:39
2016-10-30 09:46:26 +00:00
msgid ""
"A type alias is defined by assigning the type to the alias. In this example, "
"``Vector`` and ``List[float]`` will be treated as interchangeable synonyms::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:51
2016-10-30 09:46:26 +00:00
msgid ""
"Type aliases are useful for simplifying complex type signatures. For "
"example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:69
2016-10-30 09:46:26 +00:00
msgid ""
"Note that ``None`` as a type hint is a special case and is replaced by "
"``type(None)``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:75
2016-10-30 09:46:26 +00:00
msgid "NewType"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:77
2016-10-30 09:46:26 +00:00
msgid "Use the :func:`NewType` helper function to create distinct types::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:84
2016-10-30 09:46:26 +00:00
msgid ""
"The static type checker will treat the new type as if it were a subclass of "
"the original type. This is useful in helping catch logical errors::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:96
2016-10-30 09:46:26 +00:00
msgid ""
"You may still perform all ``int`` operations on a variable of type "
"``UserId``, but the result will always be of type ``int``. This lets you "
"pass in a ``UserId`` wherever an ``int`` might be expected, but will prevent "
"you from accidentally creating a ``UserId`` in an invalid way::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:104
2016-10-30 09:46:26 +00:00
msgid ""
"Note that these checks are enforced only by the static type checker. At "
2019-09-04 09:35:23 +00:00
"runtime, the statement ``Derived = NewType('Derived', Base)`` will make "
2016-10-30 09:46:26 +00:00
"``Derived`` a function that immediately returns whatever parameter you pass "
"it. That means the expression ``Derived(some_value)`` does not create a new "
"class or introduce any overhead beyond that of a regular function call."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:110
2016-10-30 09:46:26 +00:00
msgid ""
"More precisely, the expression ``some_value is Derived(some_value)`` is "
"always true at runtime."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:113
2016-10-30 09:46:26 +00:00
msgid ""
"This also means that it is not possible to create a subtype of ``Derived`` "
2017-12-01 06:48:13 +00:00
"since it is an identity function at runtime, not an actual type::"
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:123
2017-12-01 06:48:13 +00:00
msgid ""
"However, it is possible to create a :func:`NewType` based on a 'derived' "
"``NewType``::"
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:131
2017-12-01 06:48:13 +00:00
msgid "and typechecking for ``ProUserId`` will work as expected."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:133
2017-12-01 06:48:13 +00:00
msgid "See :pep:`484` for more details."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:137
2016-10-30 09:46:26 +00:00
msgid ""
"Recall that the use of a type alias declares two types to be *equivalent* to "
"one another. Doing ``Alias = Original`` will make the static type checker "
"treat ``Alias`` as being *exactly equivalent* to ``Original`` in all cases. "
"This is useful when you want to simplify complex type signatures."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:142
2016-10-30 09:46:26 +00:00
msgid ""
"In contrast, ``NewType`` declares one type to be a *subtype* of another. "
"Doing ``Derived = NewType('Derived', Original)`` will make the static type "
"checker treat ``Derived`` as a *subclass* of ``Original``, which means a "
"value of type ``Original`` cannot be used in places where a value of type "
"``Derived`` is expected. This is useful when you want to prevent logic "
"errors with minimal runtime cost."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:152
2016-10-30 09:46:26 +00:00
msgid "Callable"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:154
2016-10-30 09:46:26 +00:00
msgid ""
"Frameworks expecting callback functions of specific signatures might be type "
"hinted using ``Callable[[Arg1Type, Arg2Type], ReturnType]``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:157
2016-10-30 09:46:26 +00:00
msgid "For example::"
msgstr "Par exemple ::"
2016-10-30 09:46:26 +00:00
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:168
2016-10-30 09:46:26 +00:00
msgid ""
"It is possible to declare the return type of a callable without specifying "
"the call signature by substituting a literal ellipsis for the list of "
"arguments in the type hint: ``Callable[..., ReturnType]``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:175
2016-10-30 09:46:26 +00:00
msgid "Generics"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:177
2016-10-30 09:46:26 +00:00
msgid ""
"Since type information about objects kept in containers cannot be statically "
"inferred in a generic way, abstract base classes have been extended to "
"support subscription to denote expected types for container elements."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:188
2016-10-30 09:46:26 +00:00
msgid ""
2018-10-13 15:54:03 +00:00
"Generics can be parameterized by using a new factory available in typing "
2016-10-30 09:46:26 +00:00
"called :class:`TypeVar`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:202
2016-10-30 09:46:26 +00:00
msgid "User-defined generic types"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:204
2016-10-30 09:46:26 +00:00
msgid "A user-defined class can be defined as a generic class."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:230
2016-10-30 09:46:26 +00:00
msgid ""
"``Generic[T]`` as a base class defines that the class ``LoggedVar`` takes a "
"single type parameter ``T`` . This also makes ``T`` valid as a type within "
"the class body."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:234
2016-10-30 09:46:26 +00:00
msgid ""
"The :class:`Generic` base class uses a metaclass that defines :meth:"
"`__getitem__` so that ``LoggedVar[t]`` is valid as a type::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:243
2016-10-30 09:46:26 +00:00
msgid ""
"A generic type can have any number of type variables, and type variables may "
"be constrained::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:255
2016-10-30 09:46:26 +00:00
msgid ""
"Each type variable argument to :class:`Generic` must be distinct. This is "
"thus invalid::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:266
2016-10-30 09:46:26 +00:00
msgid "You can use multiple inheritance with :class:`Generic`::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:275
2016-10-30 09:46:26 +00:00
msgid ""
"When inheriting from generic classes, some type variables could be fixed::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:284
2016-10-30 09:46:26 +00:00
msgid "In this case ``MyDict`` has a single parameter, ``T``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:286
2016-10-30 09:46:26 +00:00
msgid ""
"Using a generic class without specifying type parameters assumes :data:`Any` "
"for each position. In the following example, ``MyIterable`` is not generic "
"but implicitly inherits from ``Iterable[Any]``::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:294
2017-04-02 20:14:06 +00:00
msgid "User defined generic type aliases are also supported. Examples::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:310
2016-10-30 09:46:26 +00:00
msgid ""
"The metaclass used by :class:`Generic` is a subclass of :class:`abc."
"ABCMeta`. A generic class can be an ABC by including abstract methods or "
"properties, and generic classes can also have ABCs as base classes without a "
"metaclass conflict. Generic metaclasses are not supported. The outcome of "
"parameterizing generics is cached, and most types in the typing module are "
"hashable and comparable for equality."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:319
2016-10-30 09:46:26 +00:00
msgid "The :data:`Any` type"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:321
2016-10-30 09:46:26 +00:00
msgid ""
"A special kind of type is :data:`Any`. A static type checker will treat "
"every type as being compatible with :data:`Any` and :data:`Any` as being "
"compatible with every type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:325
2016-10-30 09:46:26 +00:00
msgid ""
"This means that it is possible to perform any operation or method call on a "
"value of type on :data:`Any` and assign it to any variable::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:343
2016-10-30 09:46:26 +00:00
msgid ""
"Notice that no typechecking is performed when assigning a value of type :"
"data:`Any` to a more precise type. For example, the static type checker did "
"not report an error when assigning ``a`` to ``s`` even though ``s`` was "
"declared to be of type :class:`str` and receives an :class:`int` value at "
"runtime!"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:349
2016-10-30 09:46:26 +00:00
msgid ""
"Furthermore, all functions without a return type or parameter types will "
"implicitly default to using :data:`Any`::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:362
2016-10-30 09:46:26 +00:00
msgid ""
"This behavior allows :data:`Any` to be used as an *escape hatch* when you "
"need to mix dynamically and statically typed code."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:365
2016-10-30 09:46:26 +00:00
msgid ""
"Contrast the behavior of :data:`Any` with the behavior of :class:`object`. "
"Similar to :data:`Any`, every type is a subtype of :class:`object`. However, "
"unlike :data:`Any`, the reverse is not true: :class:`object` is *not* a "
"subtype of every other type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:370
2016-10-30 09:46:26 +00:00
msgid ""
"That means when the type of a value is :class:`object`, a type checker will "
"reject almost all operations on it, and assigning it to a variable (or using "
"it as a return value) of a more specialized type is a type error. For "
"example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:392
2016-10-30 09:46:26 +00:00
msgid ""
"Use :class:`object` to indicate that a value could be any type in a typesafe "
"manner. Use :data:`Any` to indicate that a value is dynamically typed."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:397
2019-09-04 09:35:23 +00:00
msgid "Nominal vs structural subtyping"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:399
2019-09-04 09:35:23 +00:00
msgid ""
"Initially :pep:`484` defined Python static type system as using *nominal "
"subtyping*. This means that a class ``A`` is allowed where a class ``B`` is "
"expected if and only if ``A`` is a subclass of ``B``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:403
2019-09-04 09:35:23 +00:00
msgid ""
"This requirement previously also applied to abstract base classes, such as :"
"class:`Iterable`. The problem with this approach is that a class had to be "
"explicitly marked to support them, which is unpythonic and unlike what one "
"would normally do in idiomatic dynamically typed Python code. For example, "
"this conforms to the :pep:`484`::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:416
2019-09-04 09:35:23 +00:00
msgid ""
":pep:`544` allows to solve this problem by allowing users to write the above "
"code without explicit base classes in the class definition, allowing "
"``Bucket`` to be implicitly considered a subtype of both ``Sized`` and "
"``Iterable[int]`` by static type checkers. This is known as *structural "
"subtyping* (or static duck-typing)::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:432
2019-09-04 09:35:23 +00:00
msgid ""
"Moreover, by subclassing a special class :class:`Protocol`, a user can "
"define new custom protocols to fully enjoy structural subtyping (see "
"examples below)."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:438
2016-10-30 09:46:26 +00:00
msgid "Classes, functions, and decorators"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:440
2016-10-30 09:46:26 +00:00
msgid "The module defines the following classes, functions and decorators:"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:444
2016-10-30 09:46:26 +00:00
msgid "Type variable."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:446 ../Doc/library/typing.rst:914
2016-10-30 09:46:26 +00:00
msgid "Usage::"
msgstr "Utilisation ::"
2016-10-30 09:46:26 +00:00
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:451
2016-10-30 09:46:26 +00:00
msgid ""
"Type variables exist primarily for the benefit of static type checkers. "
"They serve as the parameters for generic types as well as for generic "
"function definitions. See class Generic for more information on generic "
"types. Generic functions work as follows::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:464
2016-10-30 09:46:26 +00:00
msgid ""
"The latter example's signature is essentially the overloading of ``(str, "
"str) -> str`` and ``(bytes, bytes) -> bytes``. Also note that if the "
"arguments are instances of some subclass of :class:`str`, the return type is "
"still plain :class:`str`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:469
2016-10-30 09:46:26 +00:00
msgid ""
"At runtime, ``isinstance(x, T)`` will raise :exc:`TypeError`. In general, :"
"func:`isinstance` and :func:`issubclass` should not be used with types."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:472
2016-10-30 09:46:26 +00:00
msgid ""
"Type variables may be marked covariant or contravariant by passing "
"``covariant=True`` or ``contravariant=True``. See :pep:`484` for more "
"details. By default type variables are invariant. Alternatively, a type "
"variable may specify an upper bound using ``bound=<type>``. This means that "
"an actual type substituted (explicitly or implicitly) for the type variable "
"must be a subclass of the boundary type, see :pep:`484`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:482
2016-10-30 09:46:26 +00:00
msgid "Abstract base class for generic types."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:484
2016-10-30 09:46:26 +00:00
msgid ""
"A generic type is typically declared by inheriting from an instantiation of "
"this class with one or more type variables. For example, a generic mapping "
"type might be defined as::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:493
2016-10-30 09:46:26 +00:00
msgid "This class can then be used as follows::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:506
2019-09-04 09:35:23 +00:00
msgid ""
"Base class for protocol classes. Protocol classes are defined like this::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:512
2019-09-04 09:35:23 +00:00
msgid ""
"Such classes are primarily used with static type checkers that recognize "
"structural subtyping (static duck-typing), for example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:524
2019-09-04 09:35:23 +00:00
msgid ""
"See :pep:`544` for details. Protocol classes decorated with :func:"
"`runtime_checkable` (described later) act as simple-minded runtime protocols "
"that check only the presence of given attributes, ignoring their type "
"signatures."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:529
2019-09-04 09:35:23 +00:00
msgid "Protocol classes can be generic, for example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:539
2016-10-30 09:46:26 +00:00
msgid ""
"A variable annotated with ``C`` may accept a value of type ``C``. In "
"contrast, a variable annotated with ``Type[C]`` may accept values that are "
"classes themselves -- specifically, it will accept the *class object* of "
"``C``. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:548
2016-10-30 09:46:26 +00:00
msgid "Note that ``Type[C]`` is covariant::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:560
2016-10-30 09:46:26 +00:00
msgid ""
"The fact that ``Type[C]`` is covariant implies that all subclasses of ``C`` "
"should implement the same constructor signature and class method signatures "
"as ``C``. The type checker should flag violations of this, but should also "
"allow constructor calls in subclasses that match the constructor calls in "
"the indicated base class. How the type checker is required to handle this "
"particular case may change in future revisions of :pep:`484`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:568
2016-10-30 09:46:26 +00:00
msgid ""
2018-10-13 15:54:03 +00:00
"The only legal parameters for :class:`Type` are classes, :data:`Any`, :ref:"
"`type variables <generics>`, and unions of any of these types. For example::"
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:574
2016-10-30 09:46:26 +00:00
msgid ""
"``Type[Any]`` is equivalent to ``Type`` which in turn is equivalent to "
"``type``, which is the root of Python's metaclass hierarchy."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:581
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Iterable`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:585
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Iterator`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:589
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Reversible`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:593
2016-10-30 09:46:26 +00:00
msgid "An ABC with one abstract method ``__int__``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:597
2016-10-30 09:46:26 +00:00
msgid "An ABC with one abstract method ``__float__``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:601
2017-05-27 17:46:38 +00:00
msgid "An ABC with one abstract method ``__complex__``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:605
2017-05-27 17:46:38 +00:00
msgid "An ABC with one abstract method ``__bytes__``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:609
2019-09-04 09:35:23 +00:00
msgid "An ABC with one abstract method ``__index__``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:615
2016-10-30 09:46:26 +00:00
msgid ""
"An ABC with one abstract method ``__abs__`` that is covariant in its return "
"type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:620
2016-10-30 09:46:26 +00:00
msgid ""
"An ABC with one abstract method ``__round__`` that is covariant in its "
"return type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:625
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Container`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:629
2016-10-30 09:46:26 +00:00
msgid "An alias to :class:`collections.abc.Hashable`"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:633
2016-10-30 09:46:26 +00:00
msgid "An alias to :class:`collections.abc.Sized`"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:637
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Collection`"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:643
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Set`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:647
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.MutableSet`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:651
2019-01-04 23:29:24 +00:00
msgid ""
"A generic version of :class:`collections.abc.Mapping`. This type can be used "
"as follows::"
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:659
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.MutableMapping`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:663
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Sequence`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:667
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.MutableSequence`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:671
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.ByteString`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:673
2016-10-30 09:46:26 +00:00
msgid ""
"This type represents the types :class:`bytes`, :class:`bytearray`, and :"
"class:`memoryview`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:676
2016-10-30 09:46:26 +00:00
msgid ""
"As a shorthand for this type, :class:`bytes` can be used to annotate "
"arguments of any of the types mentioned above."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:681
2017-04-02 20:14:06 +00:00
msgid "A generic version of :class:`collections.deque`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:688
2016-10-30 09:46:26 +00:00
msgid ""
"Generic version of :class:`list`. Useful for annotating return types. To "
2019-01-04 23:29:24 +00:00
"annotate arguments it is preferred to use an abstract collection type such "
"as :class:`Sequence` or :class:`Iterable`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:693
2016-10-30 09:46:26 +00:00
msgid "This type may be used as follows::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:705
2019-01-04 23:29:24 +00:00
msgid ""
"A generic version of :class:`builtins.set <set>`. Useful for annotating "
"return types. To annotate arguments it is preferred to use an abstract "
"collection type such as :class:`AbstractSet`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:711
2017-04-02 20:14:06 +00:00
msgid "A generic version of :class:`builtins.frozenset <frozenset>`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:715
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.MappingView`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:719
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.KeysView`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:723
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.ItemsView`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:727
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.ValuesView`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:731
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.Awaitable`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:737
2017-04-02 20:14:06 +00:00
msgid ""
"A generic version of :class:`collections.abc.Coroutine`. The variance and "
"order of type variables correspond to those of :class:`Generator`, for "
"example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:752
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.AsyncIterable`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:758
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`collections.abc.AsyncIterator`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:764
2016-10-30 09:46:26 +00:00
msgid "A generic version of :class:`contextlib.AbstractContextManager`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:771
2018-06-28 13:32:56 +00:00
msgid "A generic version of :class:`contextlib.AbstractAsyncContextManager`."
2018-06-10 09:32:30 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:778
2018-06-10 09:32:30 +00:00
msgid ""
2019-01-04 23:29:24 +00:00
"A generic version of :class:`dict`. Useful for annotating return types. To "
"annotate arguments it is preferred to use an abstract collection type such "
"as :class:`Mapping`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:782
2019-01-04 23:29:24 +00:00
msgid "This type can be used as follows::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:789
2017-05-27 17:46:38 +00:00
msgid "A generic version of :class:`collections.defaultdict`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:795
2018-12-24 13:20:55 +00:00
msgid "A generic version of :class:`collections.OrderedDict`."
2017-05-27 17:46:38 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:801
2018-12-24 13:20:55 +00:00
msgid "A generic version of :class:`collections.Counter`."
2017-05-27 17:46:38 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:808
2018-12-24 13:20:55 +00:00
msgid "A generic version of :class:`collections.ChainMap`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:815
2016-10-30 09:46:26 +00:00
msgid ""
"A generator can be annotated by the generic type ``Generator[YieldType, "
"SendType, ReturnType]``. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:824
2016-10-30 09:46:26 +00:00
msgid ""
"Note that unlike many other generics in the typing module, the ``SendType`` "
"of :class:`Generator` behaves contravariantly, not covariantly or "
"invariantly."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:828
2016-10-30 09:46:26 +00:00
msgid ""
"If your generator will only yield values, set the ``SendType`` and "
"``ReturnType`` to ``None``::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:836
2016-10-30 09:46:26 +00:00
msgid ""
"Alternatively, annotate your generator as having a return type of either "
"``Iterable[YieldType]`` or ``Iterator[YieldType]``::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:846
2017-04-02 20:14:06 +00:00
msgid ""
"An async generator can be annotated by the generic type "
"``AsyncGenerator[YieldType, SendType]``. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:855
2017-04-02 20:14:06 +00:00
msgid ""
"Unlike normal generators, async generators cannot return a value, so there "
"is no ``ReturnType`` type parameter. As with :class:`Generator`, the "
"``SendType`` behaves contravariantly."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:859
2017-04-02 20:14:06 +00:00
msgid ""
"If your generator will only yield values, set the ``SendType`` to ``None``::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:867
2017-04-02 20:14:06 +00:00
msgid ""
"Alternatively, annotate your generator as having a return type of either "
"``AsyncIterable[YieldType]`` or ``AsyncIterator[YieldType]``::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:879
2016-10-30 09:46:26 +00:00
msgid ""
"``Text`` is an alias for ``str``. It is provided to supply a forward "
"compatible path for Python 2 code: in Python 2, ``Text`` is an alias for "
"``unicode``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:883
2016-10-30 09:46:26 +00:00
msgid ""
"Use ``Text`` to indicate that a value must contain a unicode string in a "
"manner that is compatible with both Python 2 and Python 3::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:895
2016-10-30 09:46:26 +00:00
msgid ""
2018-11-29 15:13:39 +00:00
"Generic type ``IO[AnyStr]`` and its subclasses ``TextIO(IO[str])`` and "
"``BinaryIO(IO[bytes])`` represent the types of I/O streams such as returned "
"by :func:`open`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:903
2016-10-30 09:46:26 +00:00
msgid ""
2018-11-29 15:13:39 +00:00
"These type aliases correspond to the return types from :func:`re.compile` "
"and :func:`re.match`. These types (and the corresponding functions) are "
"generic in ``AnyStr`` and can be made specific by writing ``Pattern[str]``, "
"``Pattern[bytes]``, ``Match[str]``, or ``Match[bytes]``."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:912
2019-03-20 08:41:37 +00:00
msgid "Typed version of :func:`collections.namedtuple`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:920
2016-10-30 09:46:26 +00:00
msgid "This is equivalent to::"
msgstr "Cest équivalent à ::"
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:924
2017-04-02 20:14:06 +00:00
msgid ""
"To give a field a default value, you can assign to it in the class body::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:933
2017-04-02 20:14:06 +00:00
msgid ""
"Fields with a default value must come after any fields without a default."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:935
2016-10-30 09:46:26 +00:00
msgid ""
2019-09-04 09:35:23 +00:00
"The resulting class has an extra attribute ``__annotations__`` giving a dict "
"that maps the field names to the field types. (The field names are in the "
"``_fields`` attribute and the default values are in the ``_field_defaults`` "
"attribute both of which are part of the namedtuple API.)"
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:941
2017-05-27 17:46:38 +00:00
msgid "``NamedTuple`` subclasses can also have docstrings and methods::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:951
2017-04-02 20:14:06 +00:00
msgid "Backward-compatible usage::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:955
2017-04-02 20:14:06 +00:00
msgid "Added support for :pep:`526` variable annotation syntax."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:958
2017-05-27 17:46:38 +00:00
msgid "Added support for default values, methods, and docstrings."
2017-04-02 20:14:06 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:961
2019-09-04 09:35:23 +00:00
msgid ""
"Deprecated the ``_field_types`` attribute in favor of the more standard "
"``__annotations__`` attribute which has the same information."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:965
2019-09-04 09:35:23 +00:00
msgid ""
"The ``_field_types`` and ``__annotations__`` attributes are now regular "
"dictionaries instead of instances of ``OrderedDict``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:971
2019-09-04 09:35:23 +00:00
msgid ""
"A simple typed namespace. At runtime it is equivalent to a plain :class:"
"`dict`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:974
2019-09-04 09:35:23 +00:00
msgid ""
"``TypedDict`` creates a dictionary type that expects all of its instances to "
"have a certain set of keys, where each key is associated with a value of a "
"consistent type. This expectation is not checked at runtime but is only "
"enforced by type checkers. Usage::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:990
2019-09-04 09:35:23 +00:00
msgid ""
"The type info for introspection can be accessed via ``Point2D."
"__annotations__`` and ``Point2D.__total__``. To allow using this feature "
"with older versions of Python that do not support :pep:`526`, ``TypedDict`` "
"supports two additional equivalent syntactic forms::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:998
2019-09-04 09:35:23 +00:00
msgid ""
"See :pep:`589` for more examples and detailed rules of using ``TypedDict`` "
"with type checkers."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1005
2016-10-30 09:46:26 +00:00
msgid ""
2019-06-19 20:35:23 +00:00
"A class used for internal typing representation of string forward "
"references. For example, ``List[\"SomeClass\"]`` is implicitly transformed "
"into ``List[ForwardRef(\"SomeClass\")]``. This class should not be "
"instantiated by a user, but may be used by introspection tools."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1012
2019-06-19 20:35:23 +00:00
msgid ""
2016-10-30 09:46:26 +00:00
"A helper function to indicate a distinct types to a typechecker, see :ref:"
"`distinct`. At runtime it returns a function that returns its argument. "
"Usage::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1023
2016-10-30 09:46:26 +00:00
msgid "Cast a value to a type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1025
2016-10-30 09:46:26 +00:00
msgid ""
"This returns the value unchanged. To the type checker this signals that the "
"return value has the designated type, but at runtime we intentionally don't "
"check anything (we want this to be as fast as possible)."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1032
2017-04-02 20:14:06 +00:00
msgid ""
"Return a dictionary containing type hints for a function, method, module or "
"class object."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1035
2016-10-30 09:46:26 +00:00
msgid ""
2017-04-02 20:14:06 +00:00
"This is often the same as ``obj.__annotations__``. In addition, forward "
"references encoded as string literals are handled by evaluating them in "
"``globals`` and ``locals`` namespaces. If necessary, ``Optional[t]`` is "
"added for function and method annotations if a default value equal to "
"``None`` is set. For a class ``C``, return a dictionary constructed by "
"merging all the ``__annotations__`` along ``C.__mro__`` in reverse order."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1046
2019-09-04 09:35:23 +00:00
msgid "Provide basic introspection for generic types and special typing forms."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1048
2019-09-04 09:35:23 +00:00
msgid ""
"For a typing object of the form ``X[Y, Z, ...]`` these functions return "
"``X`` and ``(Y, Z, ...)``. If ``X`` is a generic alias for a builtin or :mod:"
"`collections` class, it gets normalized to the original class. For "
"unsupported objects return ``None`` and ``()`` correspondingly. Examples::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1064
2016-10-30 09:46:26 +00:00
msgid ""
"The ``@overload`` decorator allows describing functions and methods that "
"support multiple different combinations of argument types. A series of "
"``@overload``-decorated definitions must be followed by exactly one non-"
"``@overload``-decorated definition (for the same function/method). The "
"``@overload``-decorated definitions are for the benefit of the type checker "
"only, since they will be overwritten by the non-``@overload``-decorated "
"definition, while the latter is used at runtime but should be ignored by a "
"type checker. At runtime, calling a ``@overload``-decorated function "
2018-11-29 15:13:39 +00:00
"directly will raise :exc:`NotImplementedError`. An example of overload that "
2016-10-30 09:46:26 +00:00
"gives a more precise type than can be expressed using a union or a type "
"variable::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1088
2016-10-30 09:46:26 +00:00
msgid "See :pep:`484` for details and comparison with other typing semantics."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1092
2019-09-04 09:35:23 +00:00
msgid ""
"A decorator to indicate to type checkers that the decorated method cannot be "
"overridden, and the decorated class cannot be subclassed. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1110 ../Doc/library/typing.rst:1337
2019-09-04 09:35:23 +00:00
msgid ""
"There is no runtime checking of these properties. See :pep:`591` for more "
"details."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1117
2016-10-30 09:46:26 +00:00
msgid "Decorator to indicate that annotations are not type hints."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1119
2016-10-30 09:46:26 +00:00
msgid ""
2017-12-01 06:48:13 +00:00
"This works as class or function :term:`decorator`. With a class, it applies "
2016-10-30 09:46:26 +00:00
"recursively to all methods defined in that class (but not to methods defined "
"in its superclasses or subclasses)."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1123
2016-10-30 09:46:26 +00:00
msgid "This mutates the function(s) in place."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1127
2016-10-30 09:46:26 +00:00
msgid "Decorator to give another decorator the :func:`no_type_check` effect."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1129
2016-10-30 09:46:26 +00:00
msgid ""
"This wraps the decorator with something that wraps the decorated function "
"in :func:`no_type_check`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1134
msgid "Decorator to mark a class or function to be unavailable at runtime."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1136
msgid ""
"This decorator is itself not available at runtime. It is mainly intended to "
"mark classes that are defined in type stub files if an implementation "
"returns an instance of a private class::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1147
msgid ""
"Note that returning instances of private classes is not recommended. It is "
"usually preferable to make such classes public."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1152
2019-09-04 09:35:23 +00:00
msgid "Mark a protocol class as a runtime protocol."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1154
2019-09-04 09:35:23 +00:00
msgid ""
"Such a protocol can be used with :func:`isinstance` and :func:`issubclass`. "
"This raises :exc:`TypeError` when applied to a non-protocol class. This "
"allows a simple-minded structural check, very similar to \"one trick ponies"
"\" in :mod:`collections.abc` such as :class:`Iterable`. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1165
2019-09-04 09:35:23 +00:00
msgid ""
"**Warning:** this will check only the presence of the required methods, not "
"their type signatures!"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1172
msgid "Special type indicating an unconstrained type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1174
2016-10-30 09:46:26 +00:00
msgid "Every type is compatible with :data:`Any`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1175
2016-10-30 09:46:26 +00:00
msgid ":data:`Any` is compatible with every type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1179
2018-06-10 09:32:30 +00:00
msgid "Special type indicating that a function never returns. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1192
2016-10-30 09:46:26 +00:00
msgid "Union type; ``Union[X, Y]`` means either X or Y."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1194
2016-10-30 09:46:26 +00:00
msgid "To define a union, use e.g. ``Union[int, str]``. Details:"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1196
2016-10-30 09:46:26 +00:00
msgid "The arguments must be types and there must be at least one."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1198
2016-10-30 09:46:26 +00:00
msgid "Unions of unions are flattened, e.g.::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1202
2016-10-30 09:46:26 +00:00
msgid "Unions of a single argument vanish, e.g.::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1206
2016-10-30 09:46:26 +00:00
msgid "Redundant arguments are skipped, e.g.::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1210
2016-10-30 09:46:26 +00:00
msgid "When comparing unions, the argument order is ignored, e.g.::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1214
2016-10-30 09:46:26 +00:00
msgid "You cannot subclass or instantiate a union."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1216
2016-10-30 09:46:26 +00:00
msgid "You cannot write ``Union[X][Y]``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1218
2016-10-30 09:46:26 +00:00
msgid "You can use ``Optional[X]`` as a shorthand for ``Union[X, None]``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1220
2018-06-28 13:32:56 +00:00
msgid "Don't remove explicit subclasses from unions at runtime."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1225
2016-10-30 09:46:26 +00:00
msgid "Optional type."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1227
2016-10-30 09:46:26 +00:00
msgid "``Optional[X]`` is equivalent to ``Union[X, None]``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1229
2016-10-30 09:46:26 +00:00
msgid ""
"Note that this is not the same concept as an optional argument, which is one "
2018-09-15 19:51:48 +00:00
"that has a default. An optional argument with a default does not require "
"the ``Optional`` qualifier on its type annotation just because it is "
"optional. For example::"
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1237
2018-09-15 19:51:48 +00:00
msgid ""
"On the other hand, if an explicit value of ``None`` is allowed, the use of "
"``Optional`` is appropriate, whether the argument is optional or not. For "
"example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1246
2016-10-30 09:46:26 +00:00
msgid ""
"Tuple type; ``Tuple[X, Y]`` is the type of a tuple of two items with the "
2019-09-04 09:35:23 +00:00
"first item of type X and the second of type Y. The type of the empty tuple "
"can be written as ``Tuple[()]``."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1250
2016-10-30 09:46:26 +00:00
msgid ""
"Example: ``Tuple[T1, T2]`` is a tuple of two elements corresponding to type "
"variables T1 and T2. ``Tuple[int, float, str]`` is a tuple of an int, a "
"float and a string."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1254
2016-10-30 09:46:26 +00:00
msgid ""
"To specify a variable-length tuple of homogeneous type, use literal "
"ellipsis, e.g. ``Tuple[int, ...]``. A plain :data:`Tuple` is equivalent to "
2017-04-02 20:14:06 +00:00
"``Tuple[Any, ...]``, and in turn to :class:`tuple`."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1260
2016-10-30 09:46:26 +00:00
msgid "Callable type; ``Callable[[int], str]`` is a function of (int) -> str."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1262
2016-10-30 09:46:26 +00:00
msgid ""
"The subscription syntax must always be used with exactly two values: the "
"argument list and the return type. The argument list must be a list of "
2017-04-02 20:14:06 +00:00
"types or an ellipsis; the return type must be a single type."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1267
2016-10-30 09:46:26 +00:00
msgid ""
"There is no syntax to indicate optional or keyword arguments; such function "
"types are rarely used as callback types. ``Callable[..., ReturnType]`` "
"(literal ellipsis) can be used to type hint a callable taking any number of "
"arguments and returning ``ReturnType``. A plain :data:`Callable` is "
"equivalent to ``Callable[..., Any]``, and in turn to :class:`collections.abc."
"Callable`."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1277
2019-09-04 09:35:23 +00:00
msgid ""
"A type that can be used to indicate to type checkers that the corresponding "
"variable or function parameter has a value equivalent to the provided "
"literal (or one of several literals). For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1291
2019-09-04 09:35:23 +00:00
msgid ""
"``Literal[...]`` cannot be subclassed. At runtime, an arbitrary value is "
"allowed as type argument to ``Literal[...]``, but type checkers may impose "
"restrictions. See :pep:`586` for more details about literal types."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1299
2016-10-30 09:46:26 +00:00
msgid "Special type construct to mark class variables."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1301
2016-10-30 09:46:26 +00:00
msgid ""
"As introduced in :pep:`526`, a variable annotation wrapped in ClassVar "
"indicates that a given attribute is intended to be used as a class variable "
"and should not be set on instances of that class. Usage::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1309
2016-10-30 09:46:26 +00:00
msgid ":data:`ClassVar` accepts only types and cannot be further subscribed."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1311
2016-10-30 09:46:26 +00:00
msgid ""
":data:`ClassVar` is not a class itself, and should not be used with :func:"
2017-05-27 17:46:38 +00:00
"`isinstance` or :func:`issubclass`. :data:`ClassVar` does not change Python "
"runtime behavior, but it can be used by third-party type checkers. For "
"example, a type checker might flag the following code as an error::"
2016-10-30 09:46:26 +00:00
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1325
2019-09-04 09:35:23 +00:00
msgid ""
"A special typing construct to indicate to type checkers that a name cannot "
"be re-assigned or overridden in a subclass. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1344
2016-10-30 09:46:26 +00:00
msgid ""
"``AnyStr`` is a type variable defined as ``AnyStr = TypeVar('AnyStr', str, "
"bytes)``."
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1347
2016-10-30 09:46:26 +00:00
msgid ""
"It is meant to be used for functions that may accept any kind of string "
"without allowing different kinds of strings to mix. For example::"
msgstr ""
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1359
2016-10-30 09:46:26 +00:00
msgid ""
"A special constant that is assumed to be ``True`` by 3rd party static type "
"checkers. It is ``False`` at runtime. Usage::"
msgstr ""
2017-05-27 17:46:38 +00:00
2019-10-09 16:10:12 +00:00
#: ../Doc/library/typing.rst:1368
2017-05-27 17:46:38 +00:00
msgid ""
"Note that the first type annotation must be enclosed in quotes, making it a "
"\"forward reference\", to hide the ``expensive_mod`` reference from the "
"interpreter runtime. Type annotations for local variables are not "
"evaluated, so the second annotation does not need to be enclosed in quotes."
msgstr ""