diff --git a/Doc/library/dataclasses.rst b/Doc/library/dataclasses.rst index ae90d85e8d3..95b746d81df 100644 --- a/Doc/library/dataclasses.rst +++ b/Doc/library/dataclasses.rst @@ -554,6 +554,8 @@ See the section below on init-only variables for ways to pass parameters to :meth:`!__post_init__`. Also see the warning about how :func:`replace` handles ``init=False`` fields. +.. _dataclasses-class-variables: + Class variables --------------- @@ -565,6 +567,8 @@ from consideration as a field and is ignored by the dataclass mechanisms. Such ``ClassVar`` pseudo-fields are not returned by the module-level :func:`fields` function. +.. _dataclasses-init-only-variables: + Init-only variables ------------------- @@ -596,6 +600,8 @@ value is not provided when creating the class:: In this case, :func:`fields` will return :class:`Field` objects for ``i`` and ``j``, but not for ``database``. +.. _dataclasses-frozen: + Frozen instances ---------------- @@ -609,6 +615,8 @@ There is a tiny performance penalty when using ``frozen=True``: :meth:`~object.__init__` cannot use simple assignment to initialize fields, and must use :meth:`!__setattr__`. +.. _dataclasses-inheritance: + Inheritance -----------