summaryrefslogtreecommitdiffstats
path: root/docs/InternalsManual.rst
diff options
context:
space:
mode:
authorJustin Bogner <mail@justinbogner.com>2013-09-27 21:10:54 +0000
committerJustin Bogner <mail@justinbogner.com>2013-09-27 21:10:54 +0000
commit89eb0d67291c8f9b0931cd7da865fd53c5e057b4 (patch)
tree05fd271148d27116171c5f6a03c44da3a55e22a6 /docs/InternalsManual.rst
parent4e60b9c41fc5c31bee414ffacd66baf23102f6d8 (diff)
docs: Document CXXLiteralOperatorName and CXXUsingDirective
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191560 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/InternalsManual.rst')
-rw-r--r--docs/InternalsManual.rst19
1 files changed, 17 insertions, 2 deletions
diff --git a/docs/InternalsManual.rst b/docs/InternalsManual.rst
index 2e130c30c4..6f5570263f 100644
--- a/docs/InternalsManual.rst
+++ b/docs/InternalsManual.rst
@@ -950,8 +950,8 @@ functions, Objective-C methods, C++ constructors, destructors, and operators
``DeclarationName`` is designed to efficiently represent any kind of name.
Given a ``DeclarationName`` ``N``, ``N.getNameKind()`` will produce a value
-that describes what kind of name ``N`` stores. There are 8 options (all of the
-names are inside the ``DeclarationName`` class).
+that describes what kind of name ``N`` stores. There are 10 options (all of
+the names are inside the ``DeclarationName`` class).
``Identifier``
@@ -995,6 +995,21 @@ names are inside the ``DeclarationName`` class).
Use ``N.getCXXOverloadedOperator()`` to retrieve the overloaded operator (a
value of type ``OverloadedOperatorKind``).
+``CXXLiteralOperatorName``
+
+ The name is a C++11 user defined literal operator. User defined
+ Literal operators are named according to the suffix they define,
+ e.g., "``_foo``" for "``operator "" _foo``". Use
+ ``N.getCXXLiteralIdentifier()`` to retrieve the corresponding
+ ``IdentifierInfo*`` pointing to the identifier.
+
+``CXXUsingDirective``
+
+ The name is a C++ using directive. Using directives are not really
+ NamedDecls, in that they all have the same name, but they are
+ implemented as such in order to store them in DeclContext
+ effectively.
+
``DeclarationName``\ s are cheap to create, copy, and compare. They require
only a single pointer's worth of storage in the common cases (identifiers,
zero- and one-argument Objective-C selectors) and use dense, uniqued storage