<div style="font-family: arial, helvetica, sans-serif"><font size="2"><div>... one of the final pieces that we have in the tooling branch are the AST matchers.</div><div><br></div><div>The main user interface is in ASTMatchers.h and ASTMatchFinder.h.</div>
<div><br></div><div>Note that the AST matchers are completely independent of the tooling framework, but they are easy to plug into the tooling framework (see ASTMatchersTest.cpp).</div>

<div><br></div><div>(There's also a dynamic way to contruct matchers in the works by Samuel Benzaquen, but it's not included in this patch, as it is a pure addition to the  proposed matcher library)</div><div><br>

</div><div>We've been using the library to drive large scale changes, metrics and analysis internally for > 1 year now.</div><div><br></div><div>One of the more nit-picky review questions that I don't know what to do about is style:</div>

<div>Matchers are an in-language DSL. We use meta-programming techniques to be able to contruct readable expressions without the need to spell out the types all the time. This leads to the matcher constructions being boths free-standing functions and call-able classes.</div>

<div>Internally, we've used CamelCase with an upper case first letter for the matchers, but I'm fine with changing it either way.</div><div><br></div><div>Thanks!</div><div>/Manuel</div>
</font></div>