From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Fri, 29 May 2026 19:48:48 +0000 (+0200) Subject: [3.15] gh-150403: Document frozendict in language reference Mappings section (GH... X-Git-Tag: v3.15.0b2~44 X-Git-Url: http://git.ipfire.org/gitweb/index.cgi?a=commitdiff_plain;h=a2ba8b192ed6c02e3a3943ad1551c1b38d1cc599;p=thirdparty%2FPython%2Fcpython.git [3.15] gh-150403: Document frozendict in language reference Mappings section (GH-150404) (GH-150590) (cherry picked from commit 779694faba3e80b944f528a56e9b756b55637541) Co-authored-by: Oral Ersoy Dokumacı --- diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index aef5bbe151cf..e13b2c9db490 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -496,7 +496,7 @@ subscript notation ``a[k]`` selects the item indexed by ``k`` from the mapping :keyword:`del` statements. The built-in function :func:`len` returns the number of items in a mapping. -There is currently a single intrinsic mapping type: +There are two intrinsic mapping types: Dictionaries @@ -535,6 +535,20 @@ module. an implementation detail at that time rather than a language guarantee. +Frozen dictionaries +^^^^^^^^^^^^^^^^^^^ + +.. index:: pair: object; frozendict + +These represent an immutable dictionary. They are created by the built-in +:func:`frozendict` constructor. A frozendict is :term:`hashable` if all of +its keys and values are hashable, in which case it can be used as an element +of a set, or as a key in another mapping. :class:`!frozendict` is not a +subclass of :class:`dict`; it inherits directly from :class:`object`. + +.. versionadded:: 3.15 + + Callable types --------------