diff options
author | Aaron Ballman <aaron@aaronballman.com> | 2016-06-06 18:52:17 +0000 |
---|---|---|
committer | Aaron Ballman <aaron@aaronballman.com> | 2016-06-06 18:52:17 +0000 |
commit | ba8dbbe86f3d21221783f29b96585e3fa25e9a28 (patch) | |
tree | 4084319b583c6bc40f9e6e372ca7b1dea6c2dc43 /clang/docs/LibASTMatchersReference.html | |
parent | ef2b48848256ce6e87ccd393d5a9cbb56a3042ef (diff) | |
download | bcm5719-llvm-ba8dbbe86f3d21221783f29b96585e3fa25e9a28.tar.gz bcm5719-llvm-ba8dbbe86f3d21221783f29b96585e3fa25e9a28.zip |
Adding an AST matcher to ignore parenthesis in *types* (rather than expressions). This is required for traversing certain types (like function pointer types).
llvm-svn: 271927
Diffstat (limited to 'clang/docs/LibASTMatchersReference.html')
-rw-r--r-- | clang/docs/LibASTMatchersReference.html | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/clang/docs/LibASTMatchersReference.html b/clang/docs/LibASTMatchersReference.html index 433ba7843fd..b944fc6b7e9 100644 --- a/clang/docs/LibASTMatchersReference.html +++ b/clang/docs/LibASTMatchersReference.html @@ -3521,6 +3521,10 @@ Example matches X, Y ChildT must be an AST base type. Usable as: Any Matcher +Note that has is direct matcher, so it also matches things like implicit +casts and paren casts. If you are matching with expr then you should +probably consider using ignoringParenImpCasts like: +has(ignoringParenImpCasts(expr())). </pre></td></tr> @@ -4897,6 +4901,17 @@ Usable as: Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1CallE </pre></td></tr> +<tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1QualType.html">QualType</a>></td><td class="name" onclick="toggle('ignoringParens0')"><a name="ignoringParens0Anchor">ignoringParens</a></td><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1QualType.html">QualType</a>> InnerMatcher</td></tr> +<tr><td colspan="4" class="doc" id="ignoringParens0"><pre>Matches types that match InnerMatcher after any parens are stripped. + +Given + void (*fp)(void); +The matcher + varDecl(hasType(pointerType(pointee(ignoringParens(functionType()))))) +would match the declaration for fp. +</pre></td></tr> + + <tr><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1QualType.html">QualType</a>></td><td class="name" onclick="toggle('pointsTo1')"><a name="pointsTo1Anchor">pointsTo</a></td><td>Matcher<<a href="http://clang.llvm.org/doxygen/classclang_1_1Decl.html">Decl</a>> InnerMatcher</td></tr> <tr><td colspan="4" class="doc" id="pointsTo1"><pre>Overloaded to match the pointee type's declaration. </pre></td></tr> |