]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Update the seealso entries for namedtuple() (GH-12373)
authorRaymond Hettinger <rhettinger@users.noreply.github.com>
Sat, 16 Mar 2019 19:53:23 +0000 (12:53 -0700)
committerMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Sat, 16 Mar 2019 19:53:23 +0000 (12:53 -0700)
* Replace external recipe link with a link to the dataclasses module.

* Highlight the class definition syntax for typing.NamedTuple
  and add an example for clarity.

Doc/library/collections.rst
Doc/library/typing.rst

index 5c783d46db35cea2b5169b4a5951194414ec63d8..daa741428a01e6f347d71193d234891ff3c2ae53 100644 (file)
@@ -1028,17 +1028,20 @@ customize a prototype instance:
 
 .. seealso::
 
-    * `Recipe for named tuple abstract base class with a metaclass mix-in
-      <https://code.activestate.com/recipes/577629-namedtupleabc-abstract-base-class-mix-in-for-named/>`_
-      by Jan Kaliszewski.  Besides providing an :term:`abstract base class` for
-      named tuples, it also supports an alternate :term:`metaclass`-based
-      constructor that is convenient for use cases where named tuples are being
-      subclassed.
+    * See :class:`typing.NamedTuple` for a way to add type hints for named
+      tuples.  It also provides an elegant notation using the :keyword:`class`
+      keyword::
+
+          class Component(NamedTuple):
+              part_number: int
+              weight: float
+              description: Optional[str] = None
 
     * See :meth:`types.SimpleNamespace` for a mutable namespace based on an
       underlying dictionary instead of a tuple.
 
-    * See :meth:`typing.NamedTuple` for a way to add type hints for named tuples.
+    * The :mod:`dataclasses` module provides a decorator and functions for
+      automatically adding generated special methods to user-defined classes.
 
 
 :class:`OrderedDict` objects
index 6ed09f1969db119660edc2e88cbbb220a6e74ee3..de03284dfbb6e4123238ccc27abf9695fcf4a6c1 100644 (file)
@@ -815,7 +815,7 @@ The module defines the following classes, functions and decorators:
 
 .. class:: NamedTuple
 
-   Typed version of namedtuple.
+   Typed version of :func:`collections.namedtuple`.
 
    Usage::