[clang-tidy] Eliminate inline copies of InTemplateInstantiation matcher.

llvm-svn: 217036
This commit is contained in:
Benjamin Kramer 2014-09-03 13:30:28 +00:00
parent b7f59d6bbd
commit 6bcbe6e04d
5 changed files with 9 additions and 25 deletions

View File

@ -28,10 +28,7 @@ AvoidCStyleCastsCheck::registerMatchers(ast_matchers::MatchFinder *Finder) {
// FIXME: Remove this once this is fixed in the AST.
unless(hasParent(substNonTypeTemplateParmExpr())),
// Avoid matches in template instantiations.
unless(hasAncestor(decl(
anyOf(recordDecl(ast_matchers::isTemplateInstantiation()),
functionDecl(ast_matchers::isTemplateInstantiation()))))))
.bind("cast"),
unless(isInTemplateInstantiation())).bind("cast"),
this);
}

View File

@ -30,9 +30,7 @@ ExplicitMakePairCheck::registerMatchers(ast_matchers::MatchFinder *Finder) {
// Look for std::make_pair with explicit template args. Ignore calls in
// templates.
Finder->addMatcher(
callExpr(unless(hasAncestor(decl(anyOf(
recordDecl(ast_matchers::isTemplateInstantiation()),
functionDecl(ast_matchers::isTemplateInstantiation()))))),
callExpr(unless(isInTemplateInstantiation()),
callee(expr(ignoringParenImpCasts(
declRefExpr(hasExplicitTemplateArgs(),
to(functionDecl(hasName("::std::make_pair"))))

View File

@ -19,13 +19,7 @@ namespace tidy {
namespace readability {
void NamedParameterCheck::registerMatchers(ast_matchers::MatchFinder *Finder) {
Finder->addMatcher(
functionDecl(
unless(hasAncestor(decl(
anyOf(recordDecl(ast_matchers::isTemplateInstantiation()),
functionDecl(ast_matchers::isTemplateInstantiation()))))))
.bind("decl"),
this);
Finder->addMatcher(functionDecl(unless(isInstantiated())).bind("decl"), this);
}
void NamedParameterCheck::check(const MatchFinder::MatchResult &Result) {

View File

@ -60,9 +60,7 @@ void UndelegatedConstructorCheck::registerMatchers(MatchFinder *Finder) {
constructExpr(hasDeclaration(constructorDecl(ofClass(
recordDecl(baseOfBoundNode("parent"))))))
.bind("construct"))),
unless(hasAncestor(decl(
anyOf(recordDecl(ast_matchers::isTemplateInstantiation()),
functionDecl(ast_matchers::isTemplateInstantiation())))))),
unless(isInTemplateInstantiation())),
this);
}

View File

@ -29,14 +29,11 @@ void UnusedRAIICheck::registerMatchers(MatchFinder *Finder) {
// those returned from a call.
auto BindTemp = bindTemporaryExpr(unless(has(callExpr()))).bind("temp");
Finder->addMatcher(
exprWithCleanups(
unless(hasAncestor(decl(
anyOf(recordDecl(ast_matchers::isTemplateInstantiation()),
functionDecl(ast_matchers::isTemplateInstantiation()))))),
hasParent(compoundStmt().bind("compound")),
hasType(recordDecl(hasUserDeclaredDestructor())),
anyOf(has(BindTemp), has(functionalCastExpr(has(BindTemp)))))
.bind("expr"),
exprWithCleanups(unless(isInTemplateInstantiation()),
hasParent(compoundStmt().bind("compound")),
hasType(recordDecl(hasUserDeclaredDestructor())),
anyOf(has(BindTemp), has(functionalCastExpr(
has(BindTemp))))).bind("expr"),
this);
}