Author: aaronballman Date: Thu Jan 21 09:18:25 2016 New Revision: 258401 URL: http://llvm.org/viewvc/llvm-project?rev=258401&view=rev Log: When dumping documentation for AST matchers, do something more useful with \see doxygen commands. Ideally this would link to the target of \see, but for now it translates \see into "See also: "
Regenerate the AST documentation for this new functionality. Modified: cfe/trunk/docs/LibASTMatchersReference.html cfe/trunk/docs/tools/dump_ast_matchers.py Modified: cfe/trunk/docs/LibASTMatchersReference.html URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/LibASTMatchersReference.html?rev=258401&r1=258400&r2=258401&view=diff ============================================================================== --- cfe/trunk/docs/LibASTMatchersReference.html (original) +++ cfe/trunk/docs/LibASTMatchersReference.html Thu Jan 21 09:18:25 2016 @@ -787,8 +787,8 @@ Example matches reinterpret_cast<char <tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1Stmt.html">Stmt</a>></td><td class="name" onclick="toggle('cxxStaticCastExpr0')"><a name="cxxStaticCastExpr0Anchor">cxxStaticCastExpr</a></td><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1CXXStaticCastExpr.html">CXXStaticCastExpr</a>>...</td></tr> <tr><td colspan="4" class="doc" id="cxxStaticCastExpr0"><pre>Matches a C++ static_cast expression. -hasDestinationType -reinterpretCast +See also: hasDestinationType +See also: reinterpretCast Example: cxxStaticCastExpr() @@ -898,7 +898,7 @@ Note: the name "explicitCast" is chosen Clang uses the term "cast" to apply to implicit conversions as well as to actual cast expressions. -hasDestinationType. +See also: hasDestinationType. Example: matches all five of the casts in int((int)(reinterpret_cast<int>(static_cast<int>(const_cast<int>(42))))) @@ -1061,15 +1061,16 @@ NSString's "alloc". This matcher should [[NSString alloc] initWithString:@"Hello"] </pre></td></tr> + <tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1Stmt.html">Stmt</a>></td><td class="name" onclick="toggle('parenExpr0')"><a name="parenExpr0Anchor">parenExpr</a></td><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1ParenExpr.html">ParenExpr</a>>...</td></tr> <tr><td colspan="4" class="doc" id="parenExpr0"><pre>Matches parentheses used in expressions. -Given +Example matches (foo() + 1) int foo() { return 1; } int a = (foo() + 1); -matches '(foo() + 1)' </pre></td></tr> + <tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1Stmt.html">Stmt</a>></td><td class="name" onclick="toggle('returnStmt0')"><a name="returnStmt0Anchor">returnStmt</a></td><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1ReturnStmt.html">ReturnStmt</a>>...</td></tr> <tr><td colspan="4" class="doc" id="returnStmt0"><pre>Matches return statements. @@ -2177,6 +2178,17 @@ functionDecl(isConstexpr()) </pre></td></tr> +<tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1FunctionDecl.html">FunctionDecl</a>></td><td class="name" onclick="toggle('isDefaulted0')"><a name="isDefaulted0Anchor">isDefaulted</a></td><td></td></tr> +<tr><td colspan="4" class="doc" id="isDefaulted0"><pre>Matches defaulted function declarations. + +Given: + class A { ~A(); }; + class B { ~B() = default; }; +functionDecl(isDefaulted()) + matches the declaration of ~B, but not ~A. +</pre></td></tr> + + <tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1FunctionDecl.html">FunctionDecl</a>></td><td class="name" onclick="toggle('isDefinition2')"><a name="isDefinition2Anchor">isDefinition</a></td><td></td></tr> <tr><td colspan="4" class="doc" id="isDefinition2"><pre>Matches if a declaration has a body attached. @@ -2192,17 +2204,6 @@ Usable as: Matcher<<a href="http://cla </pre></td></tr> -<tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1FunctionDecl.html">FunctionDecl</a>></td><td class="name" onclick="toggle('isDefaulted0')"><a name="isDefaulted0Anchor">isDefaulted</a></td><td></td></tr> -<tr><td colspan="4" class="doc" id="isDefaulted0"><pre>Matches defaulted function declarations. - -Given: - class A { ~A(); }; - class B { ~B() = default; }; -functionDecl(isDefaulted()) - matches the declaration of ~B, but not ~A. -</pre></td></tr> - - <tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1FunctionDecl.html">FunctionDecl</a>></td><td class="name" onclick="toggle('isDeleted0')"><a name="isDeleted0Anchor">isDeleted</a></td><td></td></tr> <tr><td colspan="4" class="doc" id="isDeleted0"><pre>Matches deleted function declarations. Modified: cfe/trunk/docs/tools/dump_ast_matchers.py URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/tools/dump_ast_matchers.py?rev=258401&r1=258400&r2=258401&view=diff ============================================================================== --- cfe/trunk/docs/tools/dump_ast_matchers.py (original) +++ cfe/trunk/docs/tools/dump_ast_matchers.py Thu Jan 21 09:18:25 2016 @@ -83,6 +83,11 @@ def strip_doxygen(comment): """Returns the given comment without \-escaped words.""" # If there is only a doxygen keyword in the line, delete the whole line. comment = re.sub(r'^\\[^\s]+\n', r'', comment, flags=re.M) + + # If there is a doxygen \see command, change the \see prefix into "See also:". + # FIXME: it would be better to turn this into a link to the target instead. + comment = re.sub(r'\\see', r'See also:', comment) + # Delete the doxygen command and the following whitespace. comment = re.sub(r'\\[^\s]+\s+', r'', comment) return comment _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits