mirror of
https://github.com/python/cpython.git
synced 2025-11-13 07:26:31 +00:00
Doc updates for PEPs 520 and 468.
This commit is contained in:
parent
6982a4f8f0
commit
68f4dd8b01
2 changed files with 22 additions and 12 deletions
|
|
@ -1801,9 +1801,9 @@ included in the class definition (if any) and the resulting object is bound
|
||||||
in the local namespace as the defined class.
|
in the local namespace as the defined class.
|
||||||
|
|
||||||
When a new class is created by ``type.__new__``, the object provided as the
|
When a new class is created by ``type.__new__``, the object provided as the
|
||||||
namespace parameter is copied to a standard Python dictionary and the original
|
namespace parameter is copied to a new ordered mapping and the original
|
||||||
object is discarded. The new copy becomes the :attr:`~object.__dict__` attribute
|
object is discarded. The new copy is wrapped in a read-only proxy, which
|
||||||
of the class object.
|
becomes the :attr:`~object.__dict__` attribute of the class object.
|
||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -116,7 +116,10 @@ Windows improvements:
|
||||||
:pep:`4XX` - Python Virtual Environments
|
:pep:`4XX` - Python Virtual Environments
|
||||||
PEP written by Carl Meyer
|
PEP written by Carl Meyer
|
||||||
|
|
||||||
.. XXX PEP 520: :ref:`Preserving Class Attribute Definition Order<whatsnew-deforder>`
|
* PEP 520: :ref:`Preserving Class Attribute Definition Order<whatsnew-deforder>`
|
||||||
|
|
||||||
|
* PEP 468: :ref:`Preserving Keyword Argument Order<whatsnew-kwargs>`
|
||||||
|
|
||||||
|
|
||||||
New Features
|
New Features
|
||||||
============
|
============
|
||||||
|
|
@ -380,17 +383,10 @@ PEP 520: Preserving Class Attribute Definition Order
|
||||||
|
|
||||||
Attributes in a class definition body have a natural ordering: the same
|
Attributes in a class definition body have a natural ordering: the same
|
||||||
order in which the names appear in the source. This order is now
|
order in which the names appear in the source. This order is now
|
||||||
preserved in the new class's ``__definition_order__`` attribute. It is
|
preserved in the new class's ``__dict__`` attribute.
|
||||||
a tuple of the attribute names, in the order in which they appear in
|
|
||||||
the class definition body.
|
|
||||||
|
|
||||||
For types that don't have a definition (e.g. builtins), or the attribute
|
|
||||||
order could not be determined, ``__definition_order__`` is ``None``.
|
|
||||||
|
|
||||||
Also, the effective default class *execution* namespace (returned from
|
Also, the effective default class *execution* namespace (returned from
|
||||||
``type.__prepare__()``) is now an insertion-order-preserving mapping.
|
``type.__prepare__()``) is now an insertion-order-preserving mapping.
|
||||||
For CPython, it is now ``collections.OrderedDict``. Note that the
|
|
||||||
class namespace, ``cls.__dict__``, is unchanged.
|
|
||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
|
|
@ -398,6 +394,20 @@ class namespace, ``cls.__dict__``, is unchanged.
|
||||||
PEP written and implemented by Eric Snow.
|
PEP written and implemented by Eric Snow.
|
||||||
|
|
||||||
|
|
||||||
|
.. _whatsnew-kwargs:
|
||||||
|
|
||||||
|
PEP 468: Preserving Keyword Argument Order
|
||||||
|
==========================================
|
||||||
|
|
||||||
|
``**kwargs`` in a function signature is now guaranteed to be an
|
||||||
|
insertion-order-preserving mapping.
|
||||||
|
|
||||||
|
.. seealso::
|
||||||
|
|
||||||
|
:pep:`468` - Preserving Keyword Argument Order
|
||||||
|
PEP written and implemented by Eric Snow.
|
||||||
|
|
||||||
|
|
||||||
PEP 509: Add a private version to dict
|
PEP 509: Add a private version to dict
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue