]> granicus.if.org Git - clang/commitdiff
docs: Document CXXLiteralOperatorName and CXXUsingDirective
authorJustin Bogner <mail@justinbogner.com>
Fri, 27 Sep 2013 21:10:54 +0000 (21:10 +0000)
committerJustin Bogner <mail@justinbogner.com>
Fri, 27 Sep 2013 21:10:54 +0000 (21:10 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191560 91177308-0d34-0410-b5e6-96231b3b80d8

docs/InternalsManual.rst

index 2e130c30c4680727391c2d1a522b6f15ff8c3c65..6f5570263fc510405646fa128bafef59fbff2a43 100644 (file)
@@ -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