<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 22, 2015 at 3:16 PM, Aaron Ballman <span dir="ltr"><<a href="mailto:aaron@aaronballman.com" target="_blank" class="cremed">aaron@aaronballman.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">On Tue, Dec 22, 2015 at 3:06 PM, Samuel Benzaquen via cfe-commits<br>
<<a href="mailto:cfe-commits@lists.llvm.org" class="cremed">cfe-commits@lists.llvm.org</a>> wrote:<br>
> Author: sbenza<br>
> Date: Tue Dec 22 14:06:40 2015<br>
> New Revision: 256278<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=256278&view=rev" rel="noreferrer" target="_blank" class="cremed">http://llvm.org/viewvc/llvm-project?rev=256278&view=rev</a><br>
> Log:<br>
> [ASTMatchers] Add booleanType() matcher.<br>
><br>
> Modified:<br>
>     cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h<br>
>     cfe/trunk/lib/ASTMatchers/Dynamic/Registry.cpp<br>
>     cfe/trunk/unittests/ASTMatchers/ASTMatchersTest.cpp<br>
><br>
> Modified: cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h?rev=256278&r1=256277&r2=256278&view=diff" rel="noreferrer" target="_blank" class="cremed">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h?rev=256278&r1=256277&r2=256278&view=diff</a><br>
> ==============================================================================<br>
> --- cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h (original)<br>
> +++ cfe/trunk/include/clang/ASTMatchers/ASTMatchers.h Tue Dec 22 14:06:40 2015<br>
> @@ -3762,6 +3762,18 @@ AST_MATCHER_FUNCTION_P_OVERLOAD(internal<br>
>        new internal::TypeLocTypeMatcher(InnerMatcher));<br>
>  }<br>
><br>
> +/// \brief Matches type \c bool.<br>
> +///<br>
> +/// Given<br>
> +/// \code<br>
> +///  struct S { bool func(); };<br>
> +/// \endcode<br>
> +/// functionDecl(returns(boolType()))<br>
<br>
The comment does not match reality -- I think you meant booleanType() instead.<br></blockquote><div><br></div><div>Sorry about that. Last minute typo.</div><div>Done at r256284.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
Also, this commit did not update the documentation; please run<br>
dump_ast_matchers.py as well.<br></blockquote><div><br></div><div>Done. It also added another matcher that was missing.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
~Aaron<br>
<br>
> +///   matches "bool func();"<br>
> +AST_MATCHER(Type, booleanType) {<br>
> +  return Node.isBooleanType();<br>
> +}<br>
> +<br>
>  /// \brief Matches type \c void.<br>
>  ///<br>
>  /// Given<br>
><br>
> Modified: cfe/trunk/lib/ASTMatchers/Dynamic/Registry.cpp<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/ASTMatchers/Dynamic/Registry.cpp?rev=256278&r1=256277&r2=256278&view=diff" rel="noreferrer" target="_blank" class="cremed">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/ASTMatchers/Dynamic/Registry.cpp?rev=256278&r1=256277&r2=256278&view=diff</a><br>
> ==============================================================================<br>
> --- cfe/trunk/lib/ASTMatchers/Dynamic/Registry.cpp (original)<br>
> +++ cfe/trunk/lib/ASTMatchers/Dynamic/Registry.cpp Tue Dec 22 14:06:40 2015<br>
> @@ -108,6 +108,7 @@ RegistryMaps::RegistryMaps() {<br>
>    REGISTER_MATCHER(autoType);<br>
>    REGISTER_MATCHER(binaryOperator);<br>
>    REGISTER_MATCHER(blockPointerType);<br>
> +  REGISTER_MATCHER(booleanType);<br>
>    REGISTER_MATCHER(breakStmt);<br>
>    REGISTER_MATCHER(builtinType);<br>
>    REGISTER_MATCHER(callExpr);<br>
><br>
> Modified: cfe/trunk/unittests/ASTMatchers/ASTMatchersTest.cpp<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/ASTMatchers/ASTMatchersTest.cpp?rev=256278&r1=256277&r2=256278&view=diff" rel="noreferrer" target="_blank" class="cremed">http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/ASTMatchers/ASTMatchersTest.cpp?rev=256278&r1=256277&r2=256278&view=diff</a><br>
> ==============================================================================<br>
> --- cfe/trunk/unittests/ASTMatchers/ASTMatchersTest.cpp (original)<br>
> +++ cfe/trunk/unittests/ASTMatchers/ASTMatchersTest.cpp Tue Dec 22 14:06:40 2015<br>
> @@ -4146,6 +4146,13 @@ TEST(TypeMatching, MatchesTypes) {<br>
>    EXPECT_TRUE(matches("struct S {};", qualType().bind("loc")));<br>
>  }<br>
><br>
> +TEST(TypeMatching, MatchesBool) {<br>
> +  EXPECT_TRUE(matches("struct S { bool func(); };",<br>
> +                      cxxMethodDecl(returns(booleanType()))));<br>
> +  EXPECT_TRUE(notMatches("struct S { void func(); };",<br>
> +                         cxxMethodDecl(returns(booleanType()))));<br>
> +}<br>
> +<br>
>  TEST(TypeMatching, MatchesVoid) {<br>
>    EXPECT_TRUE(matches("struct S { void func(); };",<br>
>                        cxxMethodDecl(returns(voidType()))));<br>
><br>
><br>
> _______________________________________________<br>
> cfe-commits mailing list<br>
> <a href="mailto:cfe-commits@lists.llvm.org" class="cremed">cfe-commits@lists.llvm.org</a><br>
> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank" class="cremed">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
</blockquote></div><br></div></div>