From 0875dcbe7c6595d145a23e1b8227c0445ebcd7b2 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Mon, 7 Apr 2025 16:54:53 +0200 Subject: [PATCH] [3.12] gh-132221: Fix `__match_args__` generation docs in `dataclasses.rst` (GH-132222) (#132227) gh-132221: Fix `__match_args__` generation docs in `dataclasses.rst` (GH-132222) (cherry picked from commit 8b62374b344f5da852bed9f16619736d4d43936b) Co-authored-by: sobolevn --- Doc/library/dataclasses.rst | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Doc/library/dataclasses.rst b/Doc/library/dataclasses.rst index 3151232588f5..bae8228d2dd7 100644 --- a/Doc/library/dataclasses.rst +++ b/Doc/library/dataclasses.rst @@ -164,7 +164,7 @@ Module contents - *match_args*: If true (the default is ``True``), the :attr:`~object.__match_args__` tuple will be created from the list of - parameters to the generated :meth:`~object.__init__` method (even if + non keyword-only parameters to the generated :meth:`~object.__init__` method (even if :meth:`!__init__` is not generated, see above). If false, or if :attr:`!__match_args__` is already defined in the class, then :attr:`!__match_args__` will not be generated. @@ -175,11 +175,12 @@ Module contents fields will be marked as keyword-only. If a field is marked as keyword-only, then the only effect is that the :meth:`~object.__init__` parameter generated from a keyword-only field must be specified - with a keyword when :meth:`!__init__` is called. There is no - effect on any other aspect of dataclasses. See the - :term:`parameter` glossary entry for details. Also see the + with a keyword when :meth:`!__init__` is called. See the :term:`parameter` + glossary entry for details. Also see the :const:`KW_ONLY` section. + Keyword-only fields are not included in :attr:`!__match_args__`. + .. versionadded:: 3.10 - *slots*: If true (the default is ``False``), :attr:`~object.__slots__` attribute @@ -306,6 +307,8 @@ Module contents This is used when the generated :meth:`~object.__init__` method's parameters are computed. + Keyword-only fields are also not included in :attr:`!__match_args__`. + .. versionadded:: 3.10 If the default value of a field is specified by a call to -- 2.47.3