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 | be40902a7dbac3f7a77cbf160fc76b2d71bb2106 (patch) | |
tree | 7d4cead40e7344b9199943bf51d0ac72c659f6b9 /docs/LibASTMatchersReference.html | |
parent | b2af159c575d5df05f957346e3d83e0f1cafe721 (diff) |
Adding an AST matcher to ignore parenthesis in *types* (rather than expressions). This is required for traversing certain types (like function pointer types).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271927 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/LibASTMatchersReference.html')
-rw-r--r-- | docs/LibASTMatchersReference.html | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/docs/LibASTMatchersReference.html b/docs/LibASTMatchersReference.html index 433ba7843f..b944fc6b7e 100644 --- a/docs/LibASTMatchersReference.html +++ b/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> |