https://github.com/python/cpython/commit/4e04511cb9c176c32d6f3694f426750d710121cd commit: 4e04511cb9c176c32d6f3694f426750d710121cd branch: main author: Yuki Kobayashi <drsuaimqj...@gmail.com> committer: sobolevn <m...@sobolevn.me> date: 2025-04-28T13:49:07+03:00 summary:
gh-133033: Add docs for `TypeIgnore` (#133034) Co-authored-by: Stan Ulbrych <89152624+stanfromirel...@users.noreply.github.com> files: M Doc/library/ast.rst diff --git a/Doc/library/ast.rst b/Doc/library/ast.rst index 1a04d42e5f5d7e..776c63d1f0fda0 100644 --- a/Doc/library/ast.rst +++ b/Doc/library/ast.rst @@ -1761,6 +1761,43 @@ Pattern matching .. versionadded:: 3.10 + +Type annotations +^^^^^^^^^^^^^^^^ + +.. class:: TypeIgnore(lineno, tag) + + A ``# type: ignore`` comment located at *lineno*. + *tag* is the optional tag specified by the form ``# type: ignore <tag>``. + + .. doctest:: + + >>> print(ast.dump(ast.parse('x = 1 # type: ignore', type_comments=True), indent=4)) + Module( + body=[ + Assign( + targets=[ + Name(id='x', ctx=Store())], + value=Constant(value=1))], + type_ignores=[ + TypeIgnore(lineno=1, tag='')]) + >>> print(ast.dump(ast.parse('x: bool = 1 # type: ignore[assignment]', type_comments=True), indent=4)) + Module( + body=[ + AnnAssign( + target=Name(id='x', ctx=Store()), + annotation=Name(id='bool', ctx=Load()), + value=Constant(value=1), + simple=1)], + type_ignores=[ + TypeIgnore(lineno=1, tag='[assignment]')]) + + .. note:: + :class:`!TypeIgnore` nodes are not generated when the *type_comments* parameter + is set to ``False`` (default). See :func:`ast.parse` for more details. + + .. versionadded:: 3.8 + .. _ast-type-params: Type parameters _______________________________________________ Python-checkins mailing list -- python-checkins@python.org To unsubscribe send an email to python-checkins-le...@python.org https://mail.python.org/mailman3/lists/python-checkins.python.org/ Member address: arch...@mail-archive.com