Kaydet (Commit) dec3b3f7 authored tarafından Georg Brandl's avatar Georg Brandl

Clarify point in name mangling doc.

üst 6eea8184
...@@ -84,14 +84,13 @@ exception. ...@@ -84,14 +84,13 @@ exception.
definition begins with two or more underscore characters and does not end in two definition begins with two or more underscore characters and does not end in two
or more underscores, it is considered a :dfn:`private name` of that class. or more underscores, it is considered a :dfn:`private name` of that class.
Private names are transformed to a longer form before code is generated for Private names are transformed to a longer form before code is generated for
them. The transformation inserts the class name in front of the name, with them. The transformation inserts the class name, with leading underscores
leading underscores removed, and a single underscore inserted in front of the removed and a single underscore inserted, in front of the name. For example,
class name. For example, the identifier ``__spam`` occurring in a class named the identifier ``__spam`` occurring in a class named ``Ham`` will be transformed
``Ham`` will be transformed to ``_Ham__spam``. This transformation is to ``_Ham__spam``. This transformation is independent of the syntactical
independent of the syntactical context in which the identifier is used. If the context in which the identifier is used. If the transformed name is extremely
transformed name is extremely long (longer than 255 characters), implementation long (longer than 255 characters), implementation defined truncation may happen.
defined truncation may happen. If the class name consists only of underscores, If the class name consists only of underscores, no transformation is done.
no transformation is done.
.. _atom-literals: .. _atom-literals:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment