Coverage Report

Created: 2021-01-26 06:56

/Users/buildslave/jenkins/workspace/coverage/llvm-project/clang/include/clang/ASTMatchers/ASTMatchersMacros.h
Line
Count
Source (jump to first uncovered line)
1
//===--- ASTMatchersMacros.h - Structural query framework -------*- C++ -*-===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
//  Defines macros that enable us to define new matchers in a single place.
10
//  Since a matcher is a function which returns a Matcher<T> object, where
11
//  T is the type of the actual implementation of the matcher, the macros allow
12
//  us to write matchers like functions and take care of the definition of the
13
//  class boilerplate.
14
//
15
//  Note that when you define a matcher with an AST_MATCHER* macro, only the
16
//  function which creates the matcher goes into the current namespace - the
17
//  class that implements the actual matcher, which gets returned by the
18
//  generator function, is put into the 'internal' namespace. This allows us
19
//  to only have the functions (which is all the user cares about) in the
20
//  'ast_matchers' namespace and hide the boilerplate.
21
//
22
//  To define a matcher in user code, put it into your own namespace. This would
23
//  help to prevent ODR violations in case a matcher with the same name is
24
//  defined in multiple translation units:
25
//
26
//  namespace my_matchers {
27
//  AST_MATCHER_P(clang::MemberExpr, Member,
28
//                clang::ast_matchers::internal::Matcher<clang::ValueDecl>,
29
//                InnerMatcher) {
30
//    return InnerMatcher.matches(*Node.getMemberDecl(), Finder, Builder);
31
//  }
32
//  } // namespace my_matchers
33
//
34
//  Alternatively, an unnamed namespace may be used:
35
//
36
//  namespace clang {
37
//  namespace ast_matchers {
38
//  namespace {
39
//  AST_MATCHER_P(MemberExpr, Member,
40
//                internal::Matcher<ValueDecl>, InnerMatcher) {
41
//    return InnerMatcher.matches(*Node.getMemberDecl(), Finder, Builder);
42
//  }
43
//  } // namespace
44
//  } // namespace ast_matchers
45
//  } // namespace clang
46
//
47
//===----------------------------------------------------------------------===//
48
49
#ifndef LLVM_CLANG_ASTMATCHERS_ASTMATCHERSMACROS_H
50
#define LLVM_CLANG_ASTMATCHERS_ASTMATCHERSMACROS_H
51
52
/// AST_MATCHER_FUNCTION(ReturnType, DefineMatcher) { ... }
53
/// defines a zero parameter function named DefineMatcher() that returns a
54
/// ReturnType object.
55
#define AST_MATCHER_FUNCTION(ReturnType, DefineMatcher)                        \
56
  inline ReturnType DefineMatcher##_getInstance();                             \
57
549
  inline ReturnType DefineMatcher() {                                          \
58
549
    return ::clang::ast_matchers::internal::MemoizedMatcher<                   \
59
549
        ReturnType, DefineMatcher##_getInstance>::getInstance();               \
60
549
  }                                                                            \
clang::ast_matchers::isInstantiated()
Line
Count
Source
57
499
  inline ReturnType DefineMatcher() {                                          \
58
499
    return ::clang::ast_matchers::internal::MemoizedMatcher<                   \
59
499
        ReturnType, DefineMatcher##_getInstance>::getInstance();               \
60
499
  }                                                                            \
clang::ast_matchers::isInTemplateInstantiation()
Line
Count
Source
57
50
  inline ReturnType DefineMatcher() {                                          \
58
50
    return ::clang::ast_matchers::internal::MemoizedMatcher<                   \
59
50
        ReturnType, DefineMatcher##_getInstance>::getInstance();               \
60
50
  }                                                                            \
61
  inline ReturnType DefineMatcher##_getInstance()
62
63
/// AST_MATCHER_FUNCTION_P(ReturnType, DefineMatcher, ParamType, Param) {
64
/// ... }
65
/// defines a single-parameter function named DefineMatcher() that returns a
66
/// ReturnType object.
67
///
68
/// The code between the curly braces has access to the following variables:
69
///
70
///   Param:                 the parameter passed to the function; its type
71
///                          is ParamType.
72
///
73
/// The code should return an instance of ReturnType.
74
#define AST_MATCHER_FUNCTION_P(ReturnType, DefineMatcher, ParamType, Param)    \
75
  AST_MATCHER_FUNCTION_P_OVERLOAD(ReturnType, DefineMatcher, ParamType, Param, \
76
                                  0)
77
#define AST_MATCHER_FUNCTION_P_OVERLOAD(ReturnType, DefineMatcher, ParamType,  \
78
                                        Param, OverloadId)                     \
79
  inline ReturnType DefineMatcher(ParamType const &Param);                     \
80
  typedef ReturnType (&DefineMatcher##_Type##OverloadId)(ParamType const &);   \
81
  inline ReturnType DefineMatcher(ParamType const &Param)
82
83
/// AST_MATCHER(Type, DefineMatcher) { ... }
84
/// defines a zero parameter function named DefineMatcher() that returns a
85
/// Matcher<Type> object.
86
///
87
/// The code between the curly braces has access to the following variables:
88
///
89
///   Node:                  the AST node being matched; its type is Type.
90
///   Finder:                an ASTMatchFinder*.
91
///   Builder:               a BoundNodesTreeBuilder*.
92
///
93
/// The code should return true if 'Node' matches.
94
#define AST_MATCHER(Type, DefineMatcher)                                       \
95
  namespace internal {                                                         \
96
  class matcher_##DefineMatcher##Matcher                                       \
97
      : public ::clang::ast_matchers::internal::MatcherInterface<Type> {       \
98
  public:                                                                      \
99
29.4k
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_booleanTypeMatcher::matcher_booleanTypeMatcher()
Line
Count
Source
99
287
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isMainMatcher::matcher_isMainMatcher()
Line
Count
Source
99
245
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isNoReturnMatcher::matcher_isNoReturnMatcher()
Line
Count
Source
99
283
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isIntegerMatcher::matcher_isIntegerMatcher()
Line
Count
Source
99
761
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isConstQualifiedMatcher::matcher_isConstQualifiedMatcher()
Line
Count
Source
99
18.4k
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasStaticStorageDurationMatcher::matcher_hasStaticStorageDurationMatcher()
Line
Count
Source
99
74
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasAutomaticStorageDurationMatcher::matcher_hasAutomaticStorageDurationMatcher()
Line
Count
Source
99
42
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasDefaultArgumentMatcher::matcher_hasDefaultArgumentMatcher()
Line
Count
Source
99
20
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasDefinitionMatcher::matcher_hasDefinitionMatcher()
Line
Count
Source
99
60
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasExternalFormalLinkageMatcher::matcher_hasExternalFormalLinkageMatcher()
Line
Count
Source
99
66
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasGlobalStorageMatcher::matcher_hasGlobalStorageMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_hasKeywordSelectorMatcher::matcher_hasKeywordSelectorMatcher()
clang::ast_matchers::internal::matcher_hasLocalQualifiersMatcher::matcher_hasLocalQualifiersMatcher()
Line
Count
Source
99
32
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasLocalStorageMatcher::matcher_hasLocalStorageMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasNullSelectorMatcher::matcher_hasNullSelectorMatcher()
Line
Count
Source
99
1
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasThreadStorageDurationMatcher::matcher_hasThreadStorageDurationMatcher()
Line
Count
Source
99
42
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasTrailingReturnMatcher::matcher_hasTrailingReturnMatcher()
Line
Count
Source
99
56
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_hasUnarySelectorMatcher::matcher_hasUnarySelectorMatcher()
Line
Count
Source
99
1
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isAnonymousMatcher::matcher_isAnonymousMatcher()
Line
Count
Source
99
20
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isAnyCharacterMatcher::matcher_isAnyCharacterMatcher()
Line
Count
Source
99
28
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isAnyPointerMatcher::matcher_isAnyPointerMatcher()
Line
Count
Source
99
36
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isArrayMatcher::matcher_isArrayMatcher()
Line
Count
Source
99
11
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isBaseInitializerMatcher::matcher_isBaseInitializerMatcher()
Line
Count
Source
99
6
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isBitFieldMatcher::matcher_isBitFieldMatcher()
Line
Count
Source
99
42
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isCatchAllMatcher::matcher_isCatchAllMatcher()
Line
Count
Source
99
30
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isClassMatcher::matcher_isClassMatcher()
Line
Count
Source
99
10
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isClassMessageMatcher::matcher_isClassMessageMatcher()
Line
Count
Source
99
2
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isClassMethodMatcher::matcher_isClassMethodMatcher()
Line
Count
Source
99
4
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isConstMatcher::matcher_isConstMatcher()
Line
Count
Source
99
914
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isCopyAssignmentOperatorMatcher::matcher_isCopyAssignmentOperatorMatcher()
Line
Count
Source
99
487
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isCopyConstructorMatcher::matcher_isCopyConstructorMatcher()
Line
Count
Source
99
506
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isDefaultConstructorMatcher::matcher_isDefaultConstructorMatcher()
Line
Count
Source
99
48
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isDefaultedMatcher::matcher_isDefaultedMatcher()
Line
Count
Source
99
24
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isDelegatingConstructorMatcher::matcher_isDelegatingConstructorMatcher()
Line
Count
Source
99
32
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isDeletedMatcher::matcher_isDeletedMatcher()
Line
Count
Source
99
1.89k
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isEnumMatcher::matcher_isEnumMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isExceptionVariableMatcher::matcher_isExceptionVariableMatcher()
Line
Count
Source
99
20
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isFirstPrivateKindMatcher::matcher_isFirstPrivateKindMatcher()
Line
Count
Source
99
1
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isImplicitMatcher::matcher_isImplicitMatcher()
Line
Count
Source
99
1.86k
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isInStdNamespaceMatcher::matcher_isInStdNamespaceMatcher()
Line
Count
Source
99
44
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isInstanceMessageMatcher::matcher_isInstanceMessageMatcher()
Line
Count
Source
99
2
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isInstanceMethodMatcher::matcher_isInstanceMethodMatcher()
Line
Count
Source
99
4
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isInstantiationDependentMatcher::matcher_isInstantiationDependentMatcher()
Line
Count
Source
99
15
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isIntegralMatcher::matcher_isIntegralMatcher()
Line
Count
Source
99
20
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isLambdaMatcher::matcher_isLambdaMatcher()
Line
Count
Source
99
32
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isListInitializationMatcher::matcher_isListInitializationMatcher()
Line
Count
Source
99
8
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isMemberInitializerMatcher::matcher_isMemberInitializerMatcher()
Line
Count
Source
99
2
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isMoveAssignmentOperatorMatcher::matcher_isMoveAssignmentOperatorMatcher()
Line
Count
Source
99
483
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isMoveConstructorMatcher::matcher_isMoveConstructorMatcher()
Line
Count
Source
99
503
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isNoneKindMatcher::matcher_isNoneKindMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isOverrideMatcher::matcher_isOverrideMatcher()
Line
Count
Source
99
50
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isPureMatcher::matcher_isPureMatcher()
Line
Count
Source
99
20
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isScopedMatcher::matcher_isScopedMatcher()
Line
Count
Source
99
22
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isSharedKindMatcher::matcher_isSharedKindMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isSignedIntegerMatcher::matcher_isSignedIntegerMatcher()
Line
Count
Source
99
28
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isStandaloneDirectiveMatcher::matcher_isStandaloneDirectiveMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isStaticLocalMatcher::matcher_isStaticLocalMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isStructMatcher::matcher_isStructMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isTypeDependentMatcher::matcher_isTypeDependentMatcher()
Line
Count
Source
99
1.00k
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isUnionMatcher::matcher_isUnionMatcher()
Line
Count
Source
99
14
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isUnsignedIntegerMatcher::matcher_isUnsignedIntegerMatcher()
Line
Count
Source
99
28
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isUserProvidedMatcher::matcher_isUserProvidedMatcher()
Line
Count
Source
99
40
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isValueDependentMatcher::matcher_isValueDependentMatcher()
Line
Count
Source
99
15
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isVariadicMatcher::matcher_isVariadicMatcher()
Line
Count
Source
99
50
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isVirtualAsWrittenMatcher::matcher_isVirtualAsWrittenMatcher()
Line
Count
Source
99
20
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isVolatileQualifiedMatcher::matcher_isVolatileQualifiedMatcher()
Line
Count
Source
99
42
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_isWeakMatcher::matcher_isWeakMatcher()
clang::ast_matchers::internal::matcher_isWrittenMatcher::matcher_isWrittenMatcher()
Line
Count
Source
99
7
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_nullPointerConstantMatcher::matcher_nullPointerConstantMatcher()
Line
Count
Source
99
79
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_realFloatingPointTypeMatcher::matcher_realFloatingPointTypeMatcher()
Line
Count
Source
99
30
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_requiresZeroInitializationMatcher::matcher_requiresZeroInitializationMatcher()
Line
Count
Source
99
6
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_usesADLMatcher::matcher_usesADLMatcher()
Line
Count
Source
99
20
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_voidTypeMatcher::matcher_voidTypeMatcher()
Line
Count
Source
99
10
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_isPotentiallyEvaluatedMatcher::matcher_isPotentiallyEvaluatedMatcher()
Line
Count
Source
99
338
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
100
    bool matches(const Type &Node,                                             \
101
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
102
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
103
                     *Builder) const override;                                 \
104
  };                                                                           \
105
  }                                                                            \
106
29.4k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
29.4k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
29.4k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
29.4k
  }                                                                            \
clang::ast_matchers::booleanType()
Line
Count
Source
106
287
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
287
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
287
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
287
  }                                                                            \
clang::ast_matchers::isMain()
Line
Count
Source
106
245
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
245
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
245
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
245
  }                                                                            \
clang::ast_matchers::isNoReturn()
Line
Count
Source
106
283
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
283
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
283
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
283
  }                                                                            \
clang::ast_matchers::isInteger()
Line
Count
Source
106
761
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
761
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
761
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
761
  }                                                                            \
clang::ast_matchers::isConstQualified()
Line
Count
Source
106
18.4k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
18.4k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
18.4k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
18.4k
  }                                                                            \
clang::ast_matchers::hasStaticStorageDuration()
Line
Count
Source
106
74
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
74
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
74
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
74
  }                                                                            \
Unexecuted instantiation: clang::ast_matchers::hasKeywordSelector()
Unexecuted instantiation: clang::ast_matchers::isWeak()
clang::ast_matchers::isBitField()
Line
Count
Source
106
42
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
42
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
42
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
42
  }                                                                            \
clang::ast_matchers::isImplicit()
Line
Count
Source
106
1.86k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1.86k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1.86k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1.86k
  }                                                                            \
clang::ast_matchers::isInstantiationDependent()
Line
Count
Source
106
15
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
15
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
15
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
15
  }                                                                            \
clang::ast_matchers::isTypeDependent()
Line
Count
Source
106
1.00k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1.00k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1.00k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1.00k
  }                                                                            \
clang::ast_matchers::isValueDependent()
Line
Count
Source
106
15
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
15
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
15
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
15
  }                                                                            \
clang::ast_matchers::isIntegral()
Line
Count
Source
106
20
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
20
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
20
  }                                                                            \
clang::ast_matchers::usesADL()
Line
Count
Source
106
20
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
20
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
20
  }                                                                            \
clang::ast_matchers::isLambda()
Line
Count
Source
106
32
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
32
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
32
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
32
  }                                                                            \
clang::ast_matchers::isClassMethod()
Line
Count
Source
106
4
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
4
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
4
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
4
  }                                                                            \
clang::ast_matchers::isInstanceMethod()
Line
Count
Source
106
4
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
4
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
4
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
4
  }                                                                            \
clang::ast_matchers::isClassMessage()
Line
Count
Source
106
2
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
2
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
2
  }                                                                            \
clang::ast_matchers::isInstanceMessage()
Line
Count
Source
106
2
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
2
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
2
  }                                                                            \
clang::ast_matchers::hasNullSelector()
Line
Count
Source
106
1
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1
  }                                                                            \
clang::ast_matchers::hasUnarySelector()
Line
Count
Source
106
1
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1
  }                                                                            \
clang::ast_matchers::isStaticLocal()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::hasLocalStorage()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::hasGlobalStorage()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::hasAutomaticStorageDuration()
Line
Count
Source
106
42
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
42
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
42
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
42
  }                                                                            \
clang::ast_matchers::hasThreadStorageDuration()
Line
Count
Source
106
42
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
42
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
42
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
42
  }                                                                            \
clang::ast_matchers::isExceptionVariable()
Line
Count
Source
106
20
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
20
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
20
  }                                                                            \
clang::ast_matchers::isCatchAll()
Line
Count
Source
106
30
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
30
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
30
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
30
  }                                                                            \
clang::ast_matchers::isWritten()
Line
Count
Source
106
7
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
7
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
7
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
7
  }                                                                            \
clang::ast_matchers::isBaseInitializer()
Line
Count
Source
106
6
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
6
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
6
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
6
  }                                                                            \
clang::ast_matchers::isMemberInitializer()
Line
Count
Source
106
2
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
2
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
2
  }                                                                            \
clang::ast_matchers::isListInitialization()
Line
Count
Source
106
8
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
8
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
8
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
8
  }                                                                            \
clang::ast_matchers::requiresZeroInitialization()
Line
Count
Source
106
6
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
6
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
6
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
6
  }                                                                            \
clang::ast_matchers::isDeleted()
Line
Count
Source
106
1.89k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1.89k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1.89k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1.89k
  }                                                                            \
clang::ast_matchers::isDefaulted()
Line
Count
Source
106
24
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
24
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
24
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
24
  }                                                                            \
clang::ast_matchers::isStruct()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::isUnion()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::isClass()
Line
Count
Source
106
10
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
10
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
10
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
10
  }                                                                            \
clang::ast_matchers::isEnum()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::isVariadic()
Line
Count
Source
106
50
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
50
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
50
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
50
  }                                                                            \
clang::ast_matchers::isVirtualAsWritten()
Line
Count
Source
106
20
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
20
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
20
  }                                                                            \
clang::ast_matchers::isPure()
Line
Count
Source
106
20
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
20
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
20
  }                                                                            \
clang::ast_matchers::isConst()
Line
Count
Source
106
914
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
914
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
914
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
914
  }                                                                            \
clang::ast_matchers::isCopyAssignmentOperator()
Line
Count
Source
106
487
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
487
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
487
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
487
  }                                                                            \
clang::ast_matchers::isMoveAssignmentOperator()
Line
Count
Source
106
483
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
483
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
483
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
483
  }                                                                            \
clang::ast_matchers::isOverride()
Line
Count
Source
106
50
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
50
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
50
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
50
  }                                                                            \
clang::ast_matchers::isUserProvided()
Line
Count
Source
106
40
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
40
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
40
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
40
  }                                                                            \
clang::ast_matchers::isUnsignedInteger()
Line
Count
Source
106
28
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
28
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
28
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
28
  }                                                                            \
clang::ast_matchers::isSignedInteger()
Line
Count
Source
106
28
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
28
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
28
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
28
  }                                                                            \
clang::ast_matchers::isAnyCharacter()
Line
Count
Source
106
28
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
28
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
28
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
28
  }                                                                            \
clang::ast_matchers::isAnyPointer()
Line
Count
Source
106
36
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
36
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
36
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
36
  }                                                                            \
clang::ast_matchers::isVolatileQualified()
Line
Count
Source
106
42
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
42
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
42
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
42
  }                                                                            \
clang::ast_matchers::hasLocalQualifiers()
Line
Count
Source
106
32
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
32
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
32
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
32
  }                                                                            \
clang::ast_matchers::voidType()
Line
Count
Source
106
10
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
10
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
10
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
10
  }                                                                            \
clang::ast_matchers::realFloatingPointType()
Line
Count
Source
106
30
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
30
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
30
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
30
  }                                                                            \
clang::ast_matchers::isCopyConstructor()
Line
Count
Source
106
506
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
506
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
506
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
506
  }                                                                            \
clang::ast_matchers::isMoveConstructor()
Line
Count
Source
106
503
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
503
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
503
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
503
  }                                                                            \
clang::ast_matchers::isDefaultConstructor()
Line
Count
Source
106
48
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
48
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
48
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
48
  }                                                                            \
clang::ast_matchers::isDelegatingConstructor()
Line
Count
Source
106
32
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
32
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
32
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
32
  }                                                                            \
clang::ast_matchers::isAnonymous()
Line
Count
Source
106
20
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
20
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
20
  }                                                                            \
clang::ast_matchers::isInStdNamespace()
Line
Count
Source
106
44
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
44
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
44
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
44
  }                                                                            \
clang::ast_matchers::nullPointerConstant()
Line
Count
Source
106
79
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
79
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
79
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
79
  }                                                                            \
clang::ast_matchers::hasExternalFormalLinkage()
Line
Count
Source
106
66
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
66
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
66
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
66
  }                                                                            \
clang::ast_matchers::hasDefaultArgument()
Line
Count
Source
106
20
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
20
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
20
  }                                                                            \
clang::ast_matchers::isArray()
Line
Count
Source
106
11
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
11
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
11
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
11
  }                                                                            \
clang::ast_matchers::hasDefinition()
Line
Count
Source
106
60
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
60
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
60
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
60
  }                                                                            \
clang::ast_matchers::isScoped()
Line
Count
Source
106
22
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
22
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
22
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
22
  }                                                                            \
clang::ast_matchers::hasTrailingReturn()
Line
Count
Source
106
56
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
56
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
56
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
56
  }                                                                            \
clang::ast_matchers::isStandaloneDirective()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::isNoneKind()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::isSharedKind()
Line
Count
Source
106
14
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
14
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
14
  }                                                                            \
clang::ast_matchers::isFirstPrivateKind()
Line
Count
Source
106
1
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::isPotentiallyEvaluated()
Line
Count
Source
106
338
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
338
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
338
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
338
  }                                                                            \
110
  inline bool internal::matcher_##DefineMatcher##Matcher::matches(             \
111
      const Type &Node,                                                        \
112
      ::clang::ast_matchers::internal::ASTMatchFinder *Finder,                 \
113
      ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) const
114
115
/// AST_MATCHER_P(Type, DefineMatcher, ParamType, Param) { ... }
116
/// defines a single-parameter function named DefineMatcher() that returns a
117
/// Matcher<Type> object.
118
///
119
/// The code between the curly braces has access to the following variables:
120
///
121
///   Node:                  the AST node being matched; its type is Type.
122
///   Param:                 the parameter passed to the function; its type
123
///                          is ParamType.
124
///   Finder:                an ASTMatchFinder*.
125
///   Builder:               a BoundNodesTreeBuilder*.
126
///
127
/// The code should return true if 'Node' matches.
128
#define AST_MATCHER_P(Type, DefineMatcher, ParamType, Param)                   \
129
  AST_MATCHER_P_OVERLOAD(Type, DefineMatcher, ParamType, Param, 0)
130
131
#define AST_MATCHER_P_OVERLOAD(Type, DefineMatcher, ParamType, Param,          \
132
                               OverloadId)                                     \
133
  namespace internal {                                                         \
134
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
135
      : public ::clang::ast_matchers::internal::MatcherInterface<Type> {       \
136
  public:                                                                      \
137
    explicit matcher_##DefineMatcher##OverloadId##Matcher(                     \
138
        ParamType const &A##Param)                                             \
139
284k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ignoringParenCasts0Matcher::matcher_ignoringParenCasts0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
459
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasConditionVariableStatement0Matcher::matcher_hasConditionVariableStatement0Matcher(clang::ast_matchers::internal::Matcher<clang::DeclStmt> const&)
Line
Count
Source
139
260
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasTrueExpression0Matcher::matcher_hasTrueExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
8.29k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasFalseExpression0Matcher::matcher_hasFalseExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
8.31k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasLoopVariable0Matcher::matcher_hasLoopVariable0Matcher(clang::ast_matchers::internal::Matcher<clang::VarDecl> const&)
Line
Count
Source
139
288
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasRangeInit0Matcher::matcher_hasRangeInit0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
759
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSelector0Matcher::matcher_hasSelector0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
139
868
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasReceiverType0Matcher::matcher_hasReceiverType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
432
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_asString0Matcher::matcher_asString0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
139
745
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasReceiver0Matcher::matcher_hasReceiver0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
434
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasLoopInit0Matcher::matcher_hasLoopInit0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
139
168
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSingleDecl0Matcher::matcher_hasSingleDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
730
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasInitializer0Matcher::matcher_hasInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
17.0k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ignoringParenImpCasts0Matcher::matcher_ignoringParenImpCasts0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
2.99k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasIncrement0Matcher::matcher_hasIncrement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
139
166
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_callee1Matcher::matcher_callee1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
4.68k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsNode0Matcher::matcher_equalsNode0Matcher(clang::Decl const* const&)
Line
Count
Source
139
48.0k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasCanonicalType0Matcher::matcher_hasCanonicalType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
2.23k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_to0Matcher::matcher_to0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
50.9k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_pointsTo0Matcher::matcher_pointsTo0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
455
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_references0Matcher::matcher_references0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
16.3k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_onImplicitObjectArgument0Matcher::matcher_onImplicitObjectArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
144
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_pointsTo1Matcher::matcher_pointsTo1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
240
        : Param(A##Param) {}                                                   \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_thisPointerType0Matcher::matcher_thisPointerType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
clang::ast_matchers::internal::matcher_hasAnySelectorMatcher0Matcher::matcher_hasAnySelectorMatcher0Matcher(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&)
Line
Count
Source
139
252
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasBitWidth0Matcher::matcher_hasBitWidth0Matcher(unsigned int const&)
Line
Count
Source
139
14
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasInClassInitializer0Matcher::matcher_hasInClassInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
20
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSpecializedTemplate0Matcher::matcher_hasSpecializedTemplate0Matcher(clang::ast_matchers::internal::Matcher<clang::ClassTemplateDecl> const&)
Line
Count
Source
139
5
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ignoringImplicit0Matcher::matcher_ignoringImplicit0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
60
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ignoringImpCasts0Matcher::matcher_ignoringImpCasts0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
355
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ignoringParens0Matcher::matcher_ignoringParens0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
14
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ignoringParens1Matcher::matcher_ignoringParens1Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
36.0k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_refersToType0Matcher::matcher_refersToType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
16
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_refersToTemplate0Matcher::matcher_refersToTemplate0Matcher(clang::ast_matchers::internal::Matcher<clang::TemplateName> const&)
Line
Count
Source
139
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_refersToDeclaration0Matcher::matcher_refersToDeclaration0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isExpr0Matcher::matcher_isExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_refersToIntegralType0Matcher::matcher_refersToIntegralType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsIntegralValue0Matcher::matcher_equalsIntegralValue0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
139
40
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSyntacticForm0Matcher::matcher_hasSyntacticForm0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_designatorCountIs0Matcher::matcher_designatorCountIs0Matcher(unsigned int const&)
Line
Count
Source
139
18
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasArgumentOfType0Matcher::matcher_hasArgumentOfType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
394
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ofKind0Matcher::matcher_ofKind0Matcher(clang::UnaryExprOrTypeTrait const&)
Line
Count
Source
139
423
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasMemberName0Matcher::matcher_hasMemberName0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
139
4
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_memberHasSameNameAsBoundNode0Matcher::matcher_memberHasSameNameAsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
139
4
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyBase0Matcher::matcher_hasAnyBase0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier> const&)
Line
Count
Source
139
190
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasDirectBase0Matcher::matcher_hasDirectBase0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier> const&)
Line
Count
Source
139
50
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasMethod0Matcher::matcher_hasMethod0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl> const&)
Line
Count
Source
139
2.47k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasUnderlyingDecl0Matcher::matcher_hasUnderlyingDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
139
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_on0Matcher::matcher_on0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
440
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_numSelectorArgs0Matcher::matcher_numSelectorArgs0Matcher(unsigned int const&)
Line
Count
Source
139
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_callee0Matcher::matcher_callee0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
139
993
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasTypeLoc0Matcher::matcher_hasTypeLoc0Matcher(clang::ast_matchers::internal::Matcher<clang::TypeLoc> const&)
Line
Count
Source
139
5
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasUnqualifiedDesugaredType0Matcher::matcher_hasUnqualifiedDesugaredType0Matcher(clang::ast_matchers::internal::Matcher<clang::Type> const&)
Line
Count
Source
139
2.43k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_references1Matcher::matcher_references1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
11
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_thisPointerType1Matcher::matcher_thisPointerType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
20
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_throughUsingDecl0Matcher::matcher_throughUsingDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl> const&)
Line
Count
Source
139
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyDeclaration0Matcher::matcher_hasAnyDeclaration0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
7
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_declCountIs0Matcher::matcher_declCountIs0Matcher(unsigned int const&)
Line
Count
Source
139
42
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyConstructorInitializer0Matcher::matcher_hasAnyConstructorInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer> const&)
Line
Count
Source
139
19
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_forField0Matcher::matcher_forField0Matcher(clang::ast_matchers::internal::Matcher<clang::FieldDecl> const&)
Line
Count
Source
139
25
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_withInitializer0Matcher::matcher_withInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
5
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyCapture0Matcher::matcher_hasAnyCapture0Matcher(clang::ast_matchers::internal::Matcher<clang::VarDecl> const&)
Line
Count
Source
139
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyCapture1Matcher::matcher_hasAnyCapture1Matcher(clang::ast_matchers::internal::Matcher<clang::CXXThisExpr> const&)
Line
Count
Source
139
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isAtPosition0Matcher::matcher_isAtPosition0Matcher(unsigned int const&)
Line
Count
Source
139
186
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_returns0Matcher::matcher_returns0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
558
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasThen0Matcher::matcher_hasThen0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
139
8
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasElse0Matcher::matcher_hasElse0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
139
7
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasIndex0Matcher::matcher_hasIndex0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasBase0Matcher::matcher_hasBase0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
325
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_statementCountIs0Matcher::matcher_statementCountIs0Matcher(unsigned int const&)
Line
Count
Source
139
140
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasCastKind0Matcher::matcher_hasCastKind0Matcher(clang::CastKind const&)
Line
Count
Source
139
32.9k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasDestinationType0Matcher::matcher_hasDestinationType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
314
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasImplicitDestinationType0Matcher::matcher_hasImplicitDestinationType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
156
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ofClass0Matcher::matcher_ofClass0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXRecordDecl> const&)
Line
Count
Source
139
582
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_forEachOverridden0Matcher::matcher_forEachOverridden0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl> const&)
Line
Count
Source
139
8
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_member0Matcher::matcher_member0Matcher(clang::ast_matchers::internal::Matcher<clang::ValueDecl> const&)
Line
Count
Source
139
33
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyUsingShadowDecl0Matcher::matcher_hasAnyUsingShadowDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl> const&)
Line
Count
Source
139
13
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasTargetDecl0Matcher::matcher_hasTargetDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
139
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSizeExpr0Matcher::matcher_hasSizeExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
14
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasQualifier0Matcher::matcher_hasQualifier0Matcher(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier> const&)
Line
Count
Source
139
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_namesType0Matcher::matcher_namesType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasDecayedType0Matcher::matcher_hasDecayedType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
14
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasDeclContext0Matcher::matcher_hasDeclContext0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
139
45
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_specifiesType0Matcher::matcher_specifiesType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
139
32
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_specifiesTypeLoc0Matcher::matcher_specifiesTypeLoc0Matcher(clang::ast_matchers::internal::Matcher<clang::TypeLoc> const&)
Line
Count
Source
139
20
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasPrefix0Matcher::matcher_hasPrefix0Matcher(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier> const&)
Line
Count
Source
139
12
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasPrefix1Matcher::matcher_hasPrefix1Matcher(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifierLoc> const&)
Line
Count
Source
139
20
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_specifiesNamespace0Matcher::matcher_specifiesNamespace0Matcher(clang::ast_matchers::internal::Matcher<clang::NamespaceDecl> const&)
Line
Count
Source
139
18
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsNode1Matcher::matcher_equalsNode1Matcher(clang::Stmt const* const&)
Line
Count
Source
139
9.09k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_forEachSwitchCase0Matcher::matcher_forEachSwitchCase0Matcher(clang::ast_matchers::internal::Matcher<clang::SwitchCase> const&)
Line
Count
Source
139
8
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_forEachConstructorInitializer0Matcher::matcher_forEachConstructorInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer> const&)
Line
Count
Source
139
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasExplicitSpecifier0Matcher::matcher_hasExplicitSpecifier0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
13
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasCaseConstant0Matcher::matcher_hasCaseConstant0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAttr0Matcher::matcher_hasAttr0Matcher(clang::attr::Kind const&)
Line
Count
Source
139
34
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasReturnValue0Matcher::matcher_hasReturnValue0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
345
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_forFunction0Matcher::matcher_forFunction0Matcher(clang::ast_matchers::internal::Matcher<clang::FunctionDecl> const&)
Line
Count
Source
139
159
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyPlacementArg0Matcher::matcher_hasAnyPlacementArg0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasArraySize0Matcher::matcher_hasArraySize0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
11
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_ignoringElidableConstructorCall0Matcher::matcher_ignoringElidableConstructorCall0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
10
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasStructuredBlock0Matcher::matcher_hasStructuredBlock0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
139
56
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyClause0Matcher::matcher_hasAnyClause0Matcher(clang::ast_matchers::internal::Matcher<clang::OMPClause> const&)
Line
Count
Source
139
44
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isAllowedToContainClauseKind0Matcher::matcher_isAllowedToContainClauseKind0Matcher(llvm::omp::Clause const&)
Line
Count
Source
139
14
        : Param(A##Param) {}                                                   \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_canResolveToExpr0Matcher::matcher_canResolveToExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
24.7k
        : Param(A##Param) {}                                                   \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_maybeEvalCommaExpr0Matcher::matcher_maybeEvalCommaExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
4.00k
        : Param(A##Param) {}                                                   \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_hasControllingExpr0Matcher::matcher_hasControllingExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
338
        : Param(A##Param) {}                                                   \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_hasAnyInit0Matcher::matcher_hasAnyInit0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
139
330
        : Param(A##Param) {}                                                   \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_hasCaptureInit0Matcher::matcher_hasCaptureInit0Matcher(clang::Expr const* const&)
Line
Count
Source
139
330
        : Param(A##Param) {}                                                   \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_hasRangeStmt0Matcher::matcher_hasRangeStmt0Matcher(clang::ast_matchers::internal::Matcher<clang::DeclStmt> const&)
Line
Count
Source
139
423
        : Param(A##Param) {}                                                   \
140
    bool matches(const Type &Node,                                             \
141
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
142
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
143
                     *Builder) const override;                                 \
144
                                                                               \
145
  private:                                                                     \
146
    ParamType const Param;                                                     \
147
  };                                                                           \
148
  }                                                                            \
149
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher(         \
150
284k
      ParamType const &Param) {                                                \
151
284k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
284k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
284k
  }                                                                            \
clang::ast_matchers::ignoringParenCasts(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
459
      ParamType const &Param) {                                                \
151
459
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
459
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
459
  }                                                                            \
clang::ast_matchers::hasConditionVariableStatement(clang::ast_matchers::internal::Matcher<clang::DeclStmt> const&)
Line
Count
Source
150
260
      ParamType const &Param) {                                                \
151
260
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
260
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
260
  }                                                                            \
clang::ast_matchers::hasTrueExpression(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
8.29k
      ParamType const &Param) {                                                \
151
8.29k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
8.29k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
8.29k
  }                                                                            \
clang::ast_matchers::hasFalseExpression(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
8.31k
      ParamType const &Param) {                                                \
151
8.31k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
8.31k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
8.31k
  }                                                                            \
clang::ast_matchers::hasLoopVariable(clang::ast_matchers::internal::Matcher<clang::VarDecl> const&)
Line
Count
Source
150
288
      ParamType const &Param) {                                                \
151
288
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
288
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
288
  }                                                                            \
clang::ast_matchers::hasRangeInit(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
759
      ParamType const &Param) {                                                \
151
759
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
759
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
759
  }                                                                            \
clang::ast_matchers::hasSelector(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
150
868
      ParamType const &Param) {                                                \
151
868
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
868
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
868
  }                                                                            \
clang::ast_matchers::hasReceiverType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
432
      ParamType const &Param) {                                                \
151
432
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
432
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
432
  }                                                                            \
clang::ast_matchers::asString(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
150
745
      ParamType const &Param) {                                                \
151
745
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
745
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
745
  }                                                                            \
clang::ast_matchers::hasReceiver(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
434
      ParamType const &Param) {                                                \
151
434
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
434
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
434
  }                                                                            \
clang::ast_matchers::hasLoopInit(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
150
168
      ParamType const &Param) {                                                \
151
168
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
168
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
168
  }                                                                            \
clang::ast_matchers::hasSingleDecl(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
730
      ParamType const &Param) {                                                \
151
730
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
730
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
730
  }                                                                            \
clang::ast_matchers::hasInitializer(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
17.0k
      ParamType const &Param) {                                                \
151
17.0k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
17.0k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
17.0k
  }                                                                            \
clang::ast_matchers::ignoringParenImpCasts(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
2.99k
      ParamType const &Param) {                                                \
151
2.99k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2.99k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2.99k
  }                                                                            \
clang::ast_matchers::hasIncrement(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
150
166
      ParamType const &Param) {                                                \
151
166
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
166
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
166
  }                                                                            \
clang::ast_matchers::callee(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
4.68k
      ParamType const &Param) {                                                \
151
4.68k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
4.68k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
4.68k
  }                                                                            \
clang::ast_matchers::equalsNode(clang::Decl const* const&)
Line
Count
Source
150
48.0k
      ParamType const &Param) {                                                \
151
48.0k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
48.0k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
48.0k
  }                                                                            \
clang::ast_matchers::hasCanonicalType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
2.23k
      ParamType const &Param) {                                                \
151
2.23k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2.23k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2.23k
  }                                                                            \
clang::ast_matchers::to(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
50.9k
      ParamType const &Param) {                                                \
151
50.9k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
50.9k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
50.9k
  }                                                                            \
clang::ast_matchers::pointsTo(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
455
      ParamType const &Param) {                                                \
151
455
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
455
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
455
  }                                                                            \
clang::ast_matchers::references(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
16.3k
      ParamType const &Param) {                                                \
151
16.3k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
16.3k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
16.3k
  }                                                                            \
clang::ast_matchers::onImplicitObjectArgument(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
144
      ParamType const &Param) {                                                \
151
144
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
144
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
144
  }                                                                            \
clang::ast_matchers::pointsTo(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
240
      ParamType const &Param) {                                                \
151
240
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
240
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
240
  }                                                                            \
Unexecuted instantiation: clang::ast_matchers::thisPointerType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
clang::ast_matchers::hasAnySelectorMatcher(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&)
Line
Count
Source
150
252
      ParamType const &Param) {                                                \
151
252
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
252
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
252
  }                                                                            \
clang::ast_matchers::hasBitWidth(unsigned int const&)
Line
Count
Source
150
14
      ParamType const &Param) {                                                \
151
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
14
  }                                                                            \
clang::ast_matchers::hasInClassInitializer(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
20
      ParamType const &Param) {                                                \
151
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
20
  }                                                                            \
clang::ast_matchers::hasSpecializedTemplate(clang::ast_matchers::internal::Matcher<clang::ClassTemplateDecl> const&)
Line
Count
Source
150
5
      ParamType const &Param) {                                                \
151
5
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
5
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
5
  }                                                                            \
clang::ast_matchers::ignoringImplicit(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
60
      ParamType const &Param) {                                                \
151
60
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
60
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
60
  }                                                                            \
clang::ast_matchers::ignoringImpCasts(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
355
      ParamType const &Param) {                                                \
151
355
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
355
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
355
  }                                                                            \
clang::ast_matchers::ignoringParens(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
14
      ParamType const &Param) {                                                \
151
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
14
  }                                                                            \
clang::ast_matchers::ignoringParens(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
36.0k
      ParamType const &Param) {                                                \
151
36.0k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
36.0k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
36.0k
  }                                                                            \
clang::ast_matchers::refersToType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
16
      ParamType const &Param) {                                                \
151
16
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
16
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
16
  }                                                                            \
clang::ast_matchers::refersToTemplate(clang::ast_matchers::internal::Matcher<clang::TemplateName> const&)
Line
Count
Source
150
1
      ParamType const &Param) {                                                \
151
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
1
  }                                                                            \
clang::ast_matchers::refersToDeclaration(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
3
      ParamType const &Param) {                                                \
151
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
3
  }                                                                            \
clang::ast_matchers::isExpr(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
1
      ParamType const &Param) {                                                \
151
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
1
  }                                                                            \
clang::ast_matchers::refersToIntegralType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
2
      ParamType const &Param) {                                                \
151
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2
  }                                                                            \
clang::ast_matchers::equalsIntegralValue(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
150
40
      ParamType const &Param) {                                                \
151
40
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
40
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
40
  }                                                                            \
clang::ast_matchers::hasSyntacticForm(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
2
      ParamType const &Param) {                                                \
151
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2
  }                                                                            \
clang::ast_matchers::designatorCountIs(unsigned int const&)
Line
Count
Source
150
18
      ParamType const &Param) {                                                \
151
18
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
18
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
18
  }                                                                            \
clang::ast_matchers::hasArgumentOfType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
394
      ParamType const &Param) {                                                \
151
394
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
394
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
394
  }                                                                            \
clang::ast_matchers::ofKind(clang::UnaryExprOrTypeTrait const&)
Line
Count
Source
150
423
      ParamType const &Param) {                                                \
151
423
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
423
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
423
  }                                                                            \
clang::ast_matchers::hasMemberName(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
150
4
      ParamType const &Param) {                                                \
151
4
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
4
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
4
  }                                                                            \
clang::ast_matchers::memberHasSameNameAsBoundNode(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
150
4
      ParamType const &Param) {                                                \
151
4
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
4
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
4
  }                                                                            \
clang::ast_matchers::hasAnyBase(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier> const&)
Line
Count
Source
150
190
      ParamType const &Param) {                                                \
151
190
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
190
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
190
  }                                                                            \
clang::ast_matchers::hasDirectBase(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier> const&)
Line
Count
Source
150
50
      ParamType const &Param) {                                                \
151
50
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
50
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
50
  }                                                                            \
clang::ast_matchers::hasMethod(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl> const&)
Line
Count
Source
150
2.47k
      ParamType const &Param) {                                                \
151
2.47k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2.47k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2.47k
  }                                                                            \
clang::ast_matchers::hasUnderlyingDecl(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
150
1
      ParamType const &Param) {                                                \
151
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
1
  }                                                                            \
clang::ast_matchers::on(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
440
      ParamType const &Param) {                                                \
151
440
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
440
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
440
  }                                                                            \
clang::ast_matchers::numSelectorArgs(unsigned int const&)
Line
Count
Source
150
1
      ParamType const &Param) {                                                \
151
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
1
  }                                                                            \
clang::ast_matchers::callee(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
150
993
      ParamType const &Param) {                                                \
151
993
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
993
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
993
  }                                                                            \
clang::ast_matchers::hasTypeLoc(clang::ast_matchers::internal::Matcher<clang::TypeLoc> const&)
Line
Count
Source
150
5
      ParamType const &Param) {                                                \
151
5
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
5
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
5
  }                                                                            \
clang::ast_matchers::hasUnqualifiedDesugaredType(clang::ast_matchers::internal::Matcher<clang::Type> const&)
Line
Count
Source
150
2.43k
      ParamType const &Param) {                                                \
151
2.43k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2.43k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2.43k
  }                                                                            \
clang::ast_matchers::references(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
11
      ParamType const &Param) {                                                \
151
11
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
11
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
11
  }                                                                            \
clang::ast_matchers::thisPointerType(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
20
      ParamType const &Param) {                                                \
151
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
20
  }                                                                            \
clang::ast_matchers::throughUsingDecl(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl> const&)
Line
Count
Source
150
2
      ParamType const &Param) {                                                \
151
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2
  }                                                                            \
clang::ast_matchers::hasAnyDeclaration(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
7
      ParamType const &Param) {                                                \
151
7
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
7
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
7
  }                                                                            \
clang::ast_matchers::declCountIs(unsigned int const&)
Line
Count
Source
150
42
      ParamType const &Param) {                                                \
151
42
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
42
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
42
  }                                                                            \
clang::ast_matchers::hasAnyConstructorInitializer(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer> const&)
Line
Count
Source
150
19
      ParamType const &Param) {                                                \
151
19
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
19
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
19
  }                                                                            \
clang::ast_matchers::forField(clang::ast_matchers::internal::Matcher<clang::FieldDecl> const&)
Line
Count
Source
150
25
      ParamType const &Param) {                                                \
151
25
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
25
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
25
  }                                                                            \
clang::ast_matchers::withInitializer(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
5
      ParamType const &Param) {                                                \
151
5
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
5
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
5
  }                                                                            \
clang::ast_matchers::hasAnyCapture(clang::ast_matchers::internal::Matcher<clang::VarDecl> const&)
Line
Count
Source
150
1
      ParamType const &Param) {                                                \
151
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
1
  }                                                                            \
clang::ast_matchers::hasAnyCapture(clang::ast_matchers::internal::Matcher<clang::CXXThisExpr> const&)
Line
Count
Source
150
1
      ParamType const &Param) {                                                \
151
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
1
  }                                                                            \
clang::ast_matchers::isAtPosition(unsigned int const&)
Line
Count
Source
150
186
      ParamType const &Param) {                                                \
151
186
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
186
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
186
  }                                                                            \
clang::ast_matchers::returns(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
558
      ParamType const &Param) {                                                \
151
558
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
558
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
558
  }                                                                            \
clang::ast_matchers::hasThen(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
150
8
      ParamType const &Param) {                                                \
151
8
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
8
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
8
  }                                                                            \
clang::ast_matchers::hasElse(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
150
7
      ParamType const &Param) {                                                \
151
7
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
7
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
7
  }                                                                            \
clang::ast_matchers::hasIndex(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
3
      ParamType const &Param) {                                                \
151
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
3
  }                                                                            \
clang::ast_matchers::hasBase(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
325
      ParamType const &Param) {                                                \
151
325
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
325
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
325
  }                                                                            \
clang::ast_matchers::statementCountIs(unsigned int const&)
Line
Count
Source
150
140
      ParamType const &Param) {                                                \
151
140
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
140
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
140
  }                                                                            \
clang::ast_matchers::hasCastKind(clang::CastKind const&)
Line
Count
Source
150
32.9k
      ParamType const &Param) {                                                \
151
32.9k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
32.9k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
32.9k
  }                                                                            \
clang::ast_matchers::hasDestinationType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
314
      ParamType const &Param) {                                                \
151
314
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
314
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
314
  }                                                                            \
clang::ast_matchers::hasImplicitDestinationType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
156
      ParamType const &Param) {                                                \
151
156
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
156
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
156
  }                                                                            \
clang::ast_matchers::ofClass(clang::ast_matchers::internal::Matcher<clang::CXXRecordDecl> const&)
Line
Count
Source
150
582
      ParamType const &Param) {                                                \
151
582
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
582
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
582
  }                                                                            \
clang::ast_matchers::forEachOverridden(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl> const&)
Line
Count
Source
150
8
      ParamType const &Param) {                                                \
151
8
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
8
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
8
  }                                                                            \
clang::ast_matchers::member(clang::ast_matchers::internal::Matcher<clang::ValueDecl> const&)
Line
Count
Source
150
33
      ParamType const &Param) {                                                \
151
33
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
33
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
33
  }                                                                            \
clang::ast_matchers::hasAnyUsingShadowDecl(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl> const&)
Line
Count
Source
150
13
      ParamType const &Param) {                                                \
151
13
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
13
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
13
  }                                                                            \
clang::ast_matchers::hasTargetDecl(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
150
3
      ParamType const &Param) {                                                \
151
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
3
  }                                                                            \
clang::ast_matchers::hasSizeExpr(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
14
      ParamType const &Param) {                                                \
151
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
14
  }                                                                            \
clang::ast_matchers::hasQualifier(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier> const&)
Line
Count
Source
150
3
      ParamType const &Param) {                                                \
151
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
3
  }                                                                            \
clang::ast_matchers::namesType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
2
      ParamType const &Param) {                                                \
151
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
2
  }                                                                            \
clang::ast_matchers::hasDecayedType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
14
      ParamType const &Param) {                                                \
151
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
14
  }                                                                            \
clang::ast_matchers::hasDeclContext(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
150
45
      ParamType const &Param) {                                                \
151
45
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
45
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
45
  }                                                                            \
clang::ast_matchers::specifiesType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
150
32
      ParamType const &Param) {                                                \
151
32
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
32
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
32
  }                                                                            \
clang::ast_matchers::specifiesTypeLoc(clang::ast_matchers::internal::Matcher<clang::TypeLoc> const&)
Line
Count
Source
150
20
      ParamType const &Param) {                                                \
151
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
20
  }                                                                            \
clang::ast_matchers::hasPrefix(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier> const&)
Line
Count
Source
150
12
      ParamType const &Param) {                                                \
151
12
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
12
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
12
  }                                                                            \
clang::ast_matchers::hasPrefix(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifierLoc> const&)
Line
Count
Source
150
20
      ParamType const &Param) {                                                \
151
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
20
  }                                                                            \
clang::ast_matchers::specifiesNamespace(clang::ast_matchers::internal::Matcher<clang::NamespaceDecl> const&)
Line
Count
Source
150
18
      ParamType const &Param) {                                                \
151
18
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
18
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
18
  }                                                                            \
clang::ast_matchers::equalsNode(clang::Stmt const* const&)
Line
Count
Source
150
9.09k
      ParamType const &Param) {                                                \
151
9.09k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
9.09k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
9.09k
  }                                                                            \
clang::ast_matchers::forEachSwitchCase(clang::ast_matchers::internal::Matcher<clang::SwitchCase> const&)
Line
Count
Source
150
8
      ParamType const &Param) {                                                \
151
8
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
8
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
8
  }                                                                            \
clang::ast_matchers::forEachConstructorInitializer(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer> const&)
Line
Count
Source
150
3
      ParamType const &Param) {                                                \
151
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
3
  }                                                                            \
clang::ast_matchers::hasExplicitSpecifier(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
13
      ParamType const &Param) {                                                \
151
13
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
13
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
13
  }                                                                            \
clang::ast_matchers::hasCaseConstant(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
3
      ParamType const &Param) {                                                \
151
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
3
  }                                                                            \
clang::ast_matchers::hasAttr(clang::attr::Kind const&)
Line
Count
Source
150
34
      ParamType const &Param) {                                                \
151
34
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
34
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
34
  }                                                                            \
clang::ast_matchers::hasReturnValue(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
345
      ParamType const &Param) {                                                \
151
345
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
345
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
345
  }                                                                            \
clang::ast_matchers::forFunction(clang::ast_matchers::internal::Matcher<clang::FunctionDecl> const&)
Line
Count
Source
150
159
      ParamType const &Param) {                                                \
151
159
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
159
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
159
  }                                                                            \
clang::ast_matchers::hasAnyPlacementArg(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
1
      ParamType const &Param) {                                                \
151
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
1
  }                                                                            \
clang::ast_matchers::hasArraySize(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
11
      ParamType const &Param) {                                                \
151
11
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
11
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
11
  }                                                                            \
clang::ast_matchers::ignoringElidableConstructorCall(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
10
      ParamType const &Param) {                                                \
151
10
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
10
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
10
  }                                                                            \
clang::ast_matchers::hasStructuredBlock(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
150
56
      ParamType const &Param) {                                                \
151
56
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
56
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
56
  }                                                                            \
clang::ast_matchers::hasAnyClause(clang::ast_matchers::internal::Matcher<clang::OMPClause> const&)
Line
Count
Source
150
44
      ParamType const &Param) {                                                \
151
44
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
44
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
44
  }                                                                            \
clang::ast_matchers::isAllowedToContainClauseKind(llvm::omp::Clause const&)
Line
Count
Source
150
14
      ParamType const &Param) {                                                \
151
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
14
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::canResolveToExpr(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
24.7k
      ParamType const &Param) {                                                \
151
24.7k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
24.7k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
24.7k
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::maybeEvalCommaExpr(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
4.00k
      ParamType const &Param) {                                                \
151
4.00k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
4.00k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
4.00k
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::hasControllingExpr(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
338
      ParamType const &Param) {                                                \
151
338
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
338
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
338
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::hasAnyInit(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
150
330
      ParamType const &Param) {                                                \
151
330
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
330
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
330
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::hasCaptureInit(clang::Expr const* const&)
Line
Count
Source
150
330
      ParamType const &Param) {                                                \
151
330
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
330
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
330
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::hasRangeStmt(clang::ast_matchers::internal::Matcher<clang::DeclStmt> const&)
Line
Count
Source
150
423
      ParamType const &Param) {                                                \
151
423
    return ::clang::ast_matchers::internal::makeMatcher(                       \
152
423
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param));    \
153
423
  }                                                                            \
154
  typedef ::clang::ast_matchers::internal::Matcher<Type>(                      \
155
      &DefineMatcher##_Type##OverloadId)(ParamType const &Param);              \
156
  inline bool internal::matcher_##DefineMatcher##OverloadId##Matcher::matches( \
157
      const Type &Node,                                                        \
158
      ::clang::ast_matchers::internal::ASTMatchFinder *Finder,                 \
159
      ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) const
160
161
/// AST_MATCHER_P2(
162
///     Type, DefineMatcher, ParamType1, Param1, ParamType2, Param2) { ... }
163
/// defines a two-parameter function named DefineMatcher() that returns a
164
/// Matcher<Type> object.
165
///
166
/// The code between the curly braces has access to the following variables:
167
///
168
///   Node:                  the AST node being matched; its type is Type.
169
///   Param1, Param2:        the parameters passed to the function; their types
170
///                          are ParamType1 and ParamType2.
171
///   Finder:                an ASTMatchFinder*.
172
///   Builder:               a BoundNodesTreeBuilder*.
173
///
174
/// The code should return true if 'Node' matches.
175
#define AST_MATCHER_P2(Type, DefineMatcher, ParamType1, Param1, ParamType2,    \
176
                       Param2)                                                 \
177
  AST_MATCHER_P2_OVERLOAD(Type, DefineMatcher, ParamType1, Param1, ParamType2, \
178
                          Param2, 0)
179
180
#define AST_MATCHER_P2_OVERLOAD(Type, DefineMatcher, ParamType1, Param1,       \
181
                                ParamType2, Param2, OverloadId)                \
182
  namespace internal {                                                         \
183
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
184
      : public ::clang::ast_matchers::internal::MatcherInterface<Type> {       \
185
  public:                                                                      \
186
    matcher_##DefineMatcher##OverloadId##Matcher(ParamType1 const &A##Param1,  \
187
                                                 ParamType2 const &A##Param2)  \
188
30
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasInit0Matcher::matcher_hasInit0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
188
24
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_containsDeclaration0Matcher::matcher_containsDeclaration0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
188
5
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasPlacementArg0Matcher::matcher_hasPlacementArg0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
188
1
        : Param1(A##Param1), Param2(A##Param2) {}                              \
189
    bool matches(const Type &Node,                                             \
190
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
191
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
192
                     *Builder) const override;                                 \
193
                                                                               \
194
  private:                                                                     \
195
    ParamType1 const Param1;                                                   \
196
    ParamType2 const Param2;                                                   \
197
  };                                                                           \
198
  }                                                                            \
199
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher(         \
200
30
      ParamType1 const &Param1, ParamType2 const &Param2) {                    \
201
30
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
30
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param1,     \
203
30
                                                                   Param2));   \
204
30
  }                                                                            \
clang::ast_matchers::hasInit(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
200
24
      ParamType1 const &Param1, ParamType2 const &Param2) {                    \
201
24
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
24
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param1,     \
203
24
                                                                   Param2));   \
204
24
  }                                                                            \
clang::ast_matchers::containsDeclaration(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
200
5
      ParamType1 const &Param1, ParamType2 const &Param2) {                    \
201
5
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
5
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param1,     \
203
5
                                                                   Param2));   \
204
5
  }                                                                            \
clang::ast_matchers::hasPlacementArg(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
200
1
      ParamType1 const &Param1, ParamType2 const &Param2) {                    \
201
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(Param1,     \
203
1
                                                                   Param2));   \
204
1
  }                                                                            \
205
  typedef ::clang::ast_matchers::internal::Matcher<Type>(                      \
206
      &DefineMatcher##_Type##OverloadId)(ParamType1 const &Param1,             \
207
                                         ParamType2 const &Param2);            \
208
  inline bool internal::matcher_##DefineMatcher##OverloadId##Matcher::matches( \
209
      const Type &Node,                                                        \
210
      ::clang::ast_matchers::internal::ASTMatchFinder *Finder,                 \
211
      ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) const
212
213
/// Construct a type-list to be passed to the AST_POLYMORPHIC_MATCHER*
214
///   macros.
215
///
216
/// You can't pass something like \c TypeList<Foo, Bar> to a macro, because it
217
/// will look at that as two arguments. However, you can pass
218
/// \c void(TypeList<Foo, Bar>), which works thanks to the parenthesis.
219
/// The \c PolymorphicMatcherWithParam* classes will unpack the function type to
220
/// extract the TypeList object.
221
#define AST_POLYMORPHIC_SUPPORTED_TYPES(...)                                   \
222
  void(::clang::ast_matchers::internal::TypeList<__VA_ARGS__>)
223
224
/// AST_POLYMORPHIC_MATCHER(DefineMatcher) { ... }
225
/// defines a single-parameter function named DefineMatcher() that is
226
/// polymorphic in the return type.
227
///
228
/// The variables are the same as for AST_MATCHER, but NodeType will be deduced
229
/// from the calling context.
230
#define AST_POLYMORPHIC_MATCHER(DefineMatcher, ReturnTypesF)                   \
231
  namespace internal {                                                         \
232
  template <typename NodeType>                                                 \
233
  class matcher_##DefineMatcher##Matcher                                       \
234
      : public ::clang::ast_matchers::internal::MatcherInterface<NodeType> {   \
235
  public:                                                                      \
236
    bool matches(const NodeType &Node,                                         \
237
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
238
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
239
                     *Builder) const override;                                 \
240
  };                                                                           \
241
  }                                                                            \
242
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<        \
243
      internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>                \
244
2.35k
  DefineMatcher() {                                                            \
245
2.35k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
2.35k
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
2.35k
  }                                                                            \
clang::ast_matchers::isAssignmentOperator()
Line
Count
Source
244
517
  DefineMatcher() {                                                            \
245
517
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
517
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
517
  }                                                                            \
clang::ast_matchers::isExpansionInMainFile()
Line
Count
Source
244
3
  DefineMatcher() {                                                            \
245
3
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
3
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
3
  }                                                                            \
clang::ast_matchers::isExpansionInSystemHeader()
Line
Count
Source
244
4
  DefineMatcher() {                                                            \
245
4
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
4
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
4
  }                                                                            \
clang::ast_matchers::isPublic()
Line
Count
Source
244
101
  DefineMatcher() {                                                            \
245
101
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
101
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
101
  }                                                                            \
clang::ast_matchers::isProtected()
Line
Count
Source
244
80
  DefineMatcher() {                                                            \
245
80
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
80
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
80
  }                                                                            \
clang::ast_matchers::isPrivate()
Line
Count
Source
244
100
  DefineMatcher() {                                                            \
245
100
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
100
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
100
  }                                                                            \
clang::ast_matchers::isExternC()
Line
Count
Source
244
60
  DefineMatcher() {                                                            \
245
60
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
60
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
60
  }                                                                            \
clang::ast_matchers::isStaticStorageClass()
Line
Count
Source
244
70
  DefineMatcher() {                                                            \
245
70
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
70
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
70
  }                                                                            \
clang::ast_matchers::hasDynamicExceptionSpec()
Line
Count
Source
244
96
  DefineMatcher() {                                                            \
245
96
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
96
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
96
  }                                                                            \
clang::ast_matchers::isNoThrow()
Line
Count
Source
244
68
  DefineMatcher() {                                                            \
245
68
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
68
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
68
  }                                                                            \
clang::ast_matchers::isConstexpr()
Line
Count
Source
244
24
  DefineMatcher() {                                                            \
245
24
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
24
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
24
  }                                                                            \
clang::ast_matchers::isComparisonOperator()
Line
Count
Source
244
34
  DefineMatcher() {                                                            \
245
34
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
34
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
34
  }                                                                            \
clang::ast_matchers::isDefinition()
Line
Count
Source
244
146
  DefineMatcher() {                                                            \
245
146
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
146
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
146
  }                                                                            \
clang::ast_matchers::isVirtual()
Line
Count
Source
244
58
  DefineMatcher() {                                                            \
245
58
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
58
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
58
  }                                                                            \
clang::ast_matchers::isFinal()
Line
Count
Source
244
32
  DefineMatcher() {                                                            \
245
32
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
32
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
32
  }                                                                            \
clang::ast_matchers::isArrow()
Line
Count
Source
244
89
  DefineMatcher() {                                                            \
245
89
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
89
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
89
  }                                                                            \
clang::ast_matchers::isTemplateInstantiation()
Line
Count
Source
244
479
  DefineMatcher() {                                                            \
245
479
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
479
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
479
  }                                                                            \
clang::ast_matchers::isExplicitTemplateSpecialization()
Line
Count
Source
244
329
  DefineMatcher() {                                                            \
245
329
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
329
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
329
  }                                                                            \
clang::ast_matchers::isExplicit()
Line
Count
Source
244
62
  DefineMatcher() {                                                            \
245
62
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
62
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
62
  }                                                                            \
clang::ast_matchers::isInline()
Line
Count
Source
244
3
  DefineMatcher() {                                                            \
245
3
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
3
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
3
  }                                                                            \
248
  template <typename NodeType>                                                 \
249
  bool internal::matcher_##DefineMatcher##Matcher<NodeType>::matches(          \
250
      const NodeType &Node,                                                    \
251
      ::clang::ast_matchers::internal::ASTMatchFinder *Finder,                 \
252
      ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) const
253
254
/// AST_POLYMORPHIC_MATCHER_P(DefineMatcher, ParamType, Param) { ... }
255
/// defines a single-parameter function named DefineMatcher() that is
256
/// polymorphic in the return type.
257
///
258
/// The variables are the same as for
259
/// AST_MATCHER_P, with the addition of NodeType, which specifies the node type
260
/// of the matcher Matcher<NodeType> returned by the function matcher().
261
///
262
/// FIXME: Pull out common code with above macro?
263
#define AST_POLYMORPHIC_MATCHER_P(DefineMatcher, ReturnTypesF, ParamType,      \
264
                                  Param)                                       \
265
  AST_POLYMORPHIC_MATCHER_P_OVERLOAD(DefineMatcher, ReturnTypesF, ParamType,   \
266
                                     Param, 0)
267
268
#define AST_POLYMORPHIC_MATCHER_P_OVERLOAD(DefineMatcher, ReturnTypesF,        \
269
                                           ParamType, Param, OverloadId)       \
270
  namespace internal {                                                         \
271
  template <typename NodeType, typename ParamT>                                \
272
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
273
      : public ::clang::ast_matchers::internal::MatcherInterface<NodeType> {   \
274
  public:                                                                      \
275
    explicit matcher_##DefineMatcher##OverloadId##Matcher(                     \
276
        ParamType const &A##Param)                                             \
277
121k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyArgument0Matcher<clang::CallExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasAnyArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1.38k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyArgument0Matcher<clang::ObjCMessageExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasAnyArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
797
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::Expr, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
771
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::IfStmt, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
287
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::ConditionalOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
272
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::ExplicitCastExpr, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
514
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyParameter0Matcher<clang::ObjCMethodDecl, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasAnyParameter0Matcher(clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
277
249
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyParameter0Matcher<clang::FunctionDecl, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasAnyParameter0Matcher(clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
277
249
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyParameter0Matcher<clang::BlockDecl, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasAnyParameter0Matcher(clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
277
249
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDerivedFrom1Matcher<clang::CXXRecordDecl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isDerivedFrom1Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
182
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSourceExpression0Matcher<clang::CStyleCastExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasSourceExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
13
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::CStyleCastExpr, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
9
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType1Matcher<clang::VarDecl, clang::ast_matchers::internal::Matcher<clang::Decl> >::matcher_hasType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
277
45
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::FieldDecl, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
139
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::ObjCMessageExpr, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
864
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasBody0Matcher<clang::ForStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasBody0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
168
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasEitherOperand0Matcher<clang::BinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasEitherOperand0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1.72k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasRHS0Matcher<clang::BinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasRHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1.42k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasOperatorName0Matcher<clang::BinaryOperator, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_hasOperatorName0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
3.03k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::VarDecl, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
18.2k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::ForStmt, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
179
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::VarDecl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
903
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasLHS0Matcher<clang::BinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasLHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
2.17k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasUnaryOperand0Matcher<clang::UnaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasUnaryOperand0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
17.4k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasOperatorName0Matcher<clang::UnaryOperator, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_hasOperatorName0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
18.3k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::Decl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
696
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::ParmVarDecl, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
16.8k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isSameOrDerivedFrom1Matcher<clang::CXXRecordDecl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isSameOrDerivedFrom1Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
1.06k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isSameOrDerivedFrom0Matcher<clang::CXXRecordDecl, clang::ast_matchers::internal::Matcher<clang::NamedDecl> >::matcher_isSameOrDerivedFrom0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
277
1.31k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDerivedFrom0Matcher<clang::CXXRecordDecl, clang::ast_matchers::internal::Matcher<clang::NamedDecl> >::matcher_isDerivedFrom0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
277
4.61k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDerivedFrom0Matcher<clang::ObjCInterfaceDecl, clang::ast_matchers::internal::Matcher<clang::NamedDecl> >::matcher_isDerivedFrom0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
277
1.20k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isSameOrDerivedFrom0Matcher<clang::ObjCInterfaceDecl, clang::ast_matchers::internal::Matcher<clang::NamedDecl> >::matcher_isSameOrDerivedFrom0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
277
308
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::Expr, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
2.34k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType1Matcher<clang::Expr, clang::ast_matchers::internal::Matcher<clang::Decl> >::matcher_hasType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
277
261
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::FriendDecl, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
10
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::TypedefNameDecl, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
4
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::ValueDecl, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
34
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType1Matcher<clang::FriendDecl, clang::ast_matchers::internal::Matcher<clang::Decl> >::matcher_hasType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
277
10
        : Param(A##Param) {}                                                   \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_hasType1Matcher<clang::ValueDecl, clang::ast_matchers::internal::Matcher<clang::Decl> >::matcher_hasType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
clang::ast_matchers::internal::matcher_hasType1Matcher<clang::CXXBaseSpecifier, clang::ast_matchers::internal::Matcher<clang::Decl> >::matcher_hasType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
277
80
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDerivedFrom1Matcher<clang::ObjCInterfaceDecl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isDerivedFrom1Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
29
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDirectlyDerivedFrom0Matcher<clang::CXXRecordDecl, clang::ast_matchers::internal::Matcher<clang::NamedDecl> >::matcher_isDirectlyDerivedFrom0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
277
390
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDirectlyDerivedFrom0Matcher<clang::ObjCInterfaceDecl, clang::ast_matchers::internal::Matcher<clang::NamedDecl> >::matcher_isDirectlyDerivedFrom0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
277
840
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDirectlyDerivedFrom1Matcher<clang::CXXRecordDecl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isDirectlyDerivedFrom1Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
30
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isDirectlyDerivedFrom1Matcher<clang::ObjCInterfaceDecl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isDirectlyDerivedFrom1Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
28
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isSameOrDerivedFrom1Matcher<clang::ObjCInterfaceDecl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isSameOrDerivedFrom1Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
14
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals0Matcher<clang::CharacterLiteral, bool>::matcher_equals0Matcher(bool const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals0Matcher<clang::CXXBoolLiteralExpr, bool>::matcher_equals0Matcher(bool const&)
Line
Count
Source
277
78
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals0Matcher<clang::IntegerLiteral, bool>::matcher_equals0Matcher(bool const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals1Matcher<clang::CharacterLiteral, unsigned int>::matcher_equals1Matcher(unsigned int const&)
Line
Count
Source
277
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals1Matcher<clang::CXXBoolLiteralExpr, unsigned int>::matcher_equals1Matcher(unsigned int const&)
Line
Count
Source
277
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals1Matcher<clang::IntegerLiteral, unsigned int>::matcher_equals1Matcher(unsigned int const&)
Line
Count
Source
277
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::CharacterLiteral, double>::matcher_equals2Matcher(double const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::CXXBoolLiteralExpr, double>::matcher_equals2Matcher(double const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::FloatingLiteral, double>::matcher_equals2Matcher(double const&)
Line
Count
Source
277
69
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::IntegerLiteral, double>::matcher_equals2Matcher(double const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::CallExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
29
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::CXXConstructExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
10
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::CXXUnresolvedConstructExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::ObjCMessageExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::Stmt, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
28
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::Type, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
20
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::QualType, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
56
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyArgument0Matcher<clang::CXXConstructExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasAnyArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyArgument0Matcher<clang::CXXUnresolvedConstructExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasAnyArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
331
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnySubstatement0Matcher<clang::CompoundStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasAnySubstatement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
95
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnySubstatement0Matcher<clang::StmtExpr, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasAnySubstatement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
4
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyTemplateArgument0Matcher<clang::ClassTemplateSpecializationDecl, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasAnyTemplateArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
277
79
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyTemplateArgument0Matcher<clang::TemplateSpecializationType, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasAnyTemplateArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
277
4
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasAnyTemplateArgument0Matcher<clang::FunctionDecl, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasAnyTemplateArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
277
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasBody0Matcher<clang::DoStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasBody0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasBody0Matcher<clang::WhileStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasBody0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasBody0Matcher<clang::CXXForRangeStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasBody0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
3
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasBody0Matcher<clang::FunctionDecl, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasBody0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
12
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::WhileStmt, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::DoStmt, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::SwitchStmt, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::AbstractConditionalOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
clang::ast_matchers::internal::matcher_hasEitherOperand0Matcher<clang::CXXOperatorCallExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasEitherOperand0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
34
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasLHS0Matcher<clang::CXXOperatorCallExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasLHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
190
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasRHS0Matcher<clang::CXXOperatorCallExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasRHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
187
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasEitherOperand0Matcher<clang::CXXRewrittenBinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasEitherOperand0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
14
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasLHS0Matcher<clang::CXXRewrittenBinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasLHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
135
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasRHS0Matcher<clang::CXXRewrittenBinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasRHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
134
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasInitStatement0Matcher<clang::IfStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasInitStatement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
28
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasInitStatement0Matcher<clang::SwitchStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasInitStatement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
18
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasInitStatement0Matcher<clang::CXXForRangeStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasInitStatement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
277
6
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasLHS0Matcher<clang::ArraySubscriptExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasLHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
2
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasObjectExpression0Matcher<clang::MemberExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasObjectExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1.04k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasObjectExpression0Matcher<clang::UnresolvedMemberExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasObjectExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
335
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasObjectExpression0Matcher<clang::CXXDependentScopeMemberExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasObjectExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
517
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasOperatorName0Matcher<clang::CXXOperatorCallExpr, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_hasOperatorName0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
107
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasOperatorName0Matcher<clang::CXXRewrittenBinaryOperator, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_hasOperatorName0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
51
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasRHS0Matcher<clang::ArraySubscriptExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasRHS0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSize0Matcher<clang::ConstantArrayType, unsigned int>::matcher_hasSize0Matcher(unsigned int const&)
Line
Count
Source
277
47
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSize0Matcher<clang::StringLiteral, unsigned int>::matcher_hasSize0Matcher(unsigned int const&)
Line
Count
Source
277
24
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSourceExpression0Matcher<clang::CastExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasSourceExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
313
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSourceExpression0Matcher<clang::OpaqueValueExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasSourceExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
28
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasUnaryOperand0Matcher<clang::CXXOperatorCallExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasUnaryOperand0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
19
        : Param(A##Param) {}                                                   \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_isExpandedFromMacro0Matcher<clang::Decl, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isExpandedFromMacro0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Unexecuted instantiation: clang::ast_matchers::internal::matcher_isExpandedFromMacro0Matcher<clang::Stmt, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isExpandedFromMacro0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
clang::ast_matchers::internal::matcher_isExpandedFromMacro0Matcher<clang::TypeLoc, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isExpandedFromMacro0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
1
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_parameterCountIs0Matcher<clang::FunctionDecl, unsigned int>::matcher_parameterCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
60
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_parameterCountIs0Matcher<clang::FunctionProtoType, unsigned int>::matcher_parameterCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
26
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_templateArgumentCountIs0Matcher<clang::ClassTemplateSpecializationDecl, unsigned int>::matcher_templateArgumentCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
20
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_templateArgumentCountIs0Matcher<clang::TemplateSpecializationType, unsigned int>::matcher_templateArgumentCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
20
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_isExpandedFromMacro0Matcher<clang::CallExpr, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_isExpandedFromMacro0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
10
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasSourceExpression0Matcher<clang::ImplicitCastExpr, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasSourceExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
277
16.2k
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::CXXOperatorCallExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int const&)
Line
Count
Source
277
469
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_hasType0Matcher<clang::DeclRefExpr, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_hasType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
277
344
        : Param(A##Param) {}                                                   \
clang::ast_matchers::internal::matcher_equalsBoundNode0Matcher<clang::DeclStmt, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >::matcher_equalsBoundNode0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
277
138
        : Param(A##Param) {}                                                   \
278
    bool matches(const NodeType &Node,                                         \
279
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
280
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
281
                     *Builder) const override;                                 \
282
                                                                               \
283
  private:                                                                     \
284
    ParamType const Param;                                                     \
285
  };                                                                           \
286
  }                                                                            \
287
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<        \
288
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,       \
289
      ReturnTypesF>                                                            \
290
119k
  DefineMatcher(ParamType const &Param) {                                      \
291
119k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
119k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
119k
        ReturnTypesF>(Param);                                                  \
294
119k
  }                                                                            \
clang::ast_matchers::hasAnyArgument(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
1.71k
  DefineMatcher(ParamType const &Param) {                                      \
291
1.71k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
1.71k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
1.71k
        ReturnTypesF>(Param);                                                  \
294
1.71k
  }                                                                            \
clang::ast_matchers::hasAnyParameter(clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
290
257
  DefineMatcher(ParamType const &Param) {                                      \
291
257
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
257
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
257
        ReturnTypesF>(Param);                                                  \
294
257
  }                                                                            \
clang::ast_matchers::isDerivedFrom(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
290
210
  DefineMatcher(ParamType const &Param) {                                      \
291
210
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
210
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
210
        ReturnTypesF>(Param);                                                  \
294
210
  }                                                                            \
clang::ast_matchers::hasSourceExpression(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
16.5k
  DefineMatcher(ParamType const &Param) {                                      \
291
16.5k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
16.5k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
16.5k
        ReturnTypesF>(Param);                                                  \
294
16.5k
  }                                                                            \
clang::ast_matchers::hasCondition(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
744
  DefineMatcher(ParamType const &Param) {                                      \
291
744
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
744
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
744
        ReturnTypesF>(Param);                                                  \
294
744
  }                                                                            \
clang::ast_matchers::hasEitherOperand(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
1.73k
  DefineMatcher(ParamType const &Param) {                                      \
291
1.73k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
1.73k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
1.73k
        ReturnTypesF>(Param);                                                  \
294
1.73k
  }                                                                            \
clang::ast_matchers::equalsBoundNode(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
290
3.47k
  DefineMatcher(ParamType const &Param) {                                      \
291
3.47k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
3.47k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
3.47k
        ReturnTypesF>(Param);                                                  \
294
3.47k
  }                                                                            \
clang::ast_matchers::hasLHS(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
2.40k
  DefineMatcher(ParamType const &Param) {                                      \
291
2.40k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
2.40k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
2.40k
        ReturnTypesF>(Param);                                                  \
294
2.40k
  }                                                                            \
clang::ast_matchers::hasRHS(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
1.65k
  DefineMatcher(ParamType const &Param) {                                      \
291
1.65k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
1.65k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
1.65k
        ReturnTypesF>(Param);                                                  \
294
1.65k
  }                                                                            \
clang::ast_matchers::hasOperatorName(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
290
21.4k
  DefineMatcher(ParamType const &Param) {                                      \
291
21.4k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
21.4k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
21.4k
        ReturnTypesF>(Param);                                                  \
294
21.4k
  }                                                                            \
clang::ast_matchers::hasUnaryOperand(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
17.4k
  DefineMatcher(ParamType const &Param) {                                      \
291
17.4k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
17.4k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
17.4k
        ReturnTypesF>(Param);                                                  \
294
17.4k
  }                                                                            \
clang::ast_matchers::hasBody(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
290
191
  DefineMatcher(ParamType const &Param) {                                      \
291
191
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
191
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
191
        ReturnTypesF>(Param);                                                  \
294
191
  }                                                                            \
clang::ast_matchers::hasType(clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
290
38.6k
  DefineMatcher(ParamType const &Param) {                                      \
291
38.6k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
38.6k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
38.6k
        ReturnTypesF>(Param);                                                  \
294
38.6k
  }                                                                            \
clang::ast_matchers::hasType(clang::ast_matchers::internal::Matcher<clang::Decl> const&)
Line
Count
Source
290
452
  DefineMatcher(ParamType const &Param) {                                      \
291
452
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
452
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
452
        ReturnTypesF>(Param);                                                  \
294
452
  }                                                                            \
clang::ast_matchers::isSameOrDerivedFrom(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
290
1.08k
  DefineMatcher(ParamType const &Param) {                                      \
291
1.08k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
1.08k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
1.08k
        ReturnTypesF>(Param);                                                  \
294
1.08k
  }                                                                            \
clang::ast_matchers::isSameOrDerivedFrom(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
290
1.61k
  DefineMatcher(ParamType const &Param) {                                      \
291
1.61k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
1.61k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
1.61k
        ReturnTypesF>(Param);                                                  \
294
1.61k
  }                                                                            \
clang::ast_matchers::isDerivedFrom(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
290
5.81k
  DefineMatcher(ParamType const &Param) {                                      \
291
5.81k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
5.81k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
5.81k
        ReturnTypesF>(Param);                                                  \
294
5.81k
  }                                                                            \
clang::ast_matchers::isExpandedFromMacro(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
290
181
  DefineMatcher(ParamType const &Param) {                                      \
291
181
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
181
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
181
        ReturnTypesF>(Param);                                                  \
294
181
  }                                                                            \
clang::ast_matchers::hasAnyTemplateArgument(clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
290
83
  DefineMatcher(ParamType const &Param) {                                      \
291
83
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
83
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
83
        ReturnTypesF>(Param);                                                  \
294
83
  }                                                                            \
clang::ast_matchers::templateArgumentCountIs(unsigned int const&)
Line
Count
Source
290
40
  DefineMatcher(ParamType const &Param) {                                      \
291
40
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
40
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
40
        ReturnTypesF>(Param);                                                  \
294
40
  }                                                                            \
clang::ast_matchers::isDirectlyDerivedFrom(clang::ast_matchers::internal::Matcher<clang::NamedDecl> const&)
Line
Count
Source
290
1.23k
  DefineMatcher(ParamType const &Param) {                                      \
291
1.23k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
1.23k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
1.23k
        ReturnTypesF>(Param);                                                  \
294
1.23k
  }                                                                            \
clang::ast_matchers::isDirectlyDerivedFrom(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)
Line
Count
Source
290
58
  DefineMatcher(ParamType const &Param) {                                      \
291
58
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
58
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
58
        ReturnTypesF>(Param);                                                  \
294
58
  }                                                                            \
clang::ast_matchers::argumentCountIs(unsigned int const&)
Line
Count
Source
290
511
  DefineMatcher(ParamType const &Param) {                                      \
291
511
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
511
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
511
        ReturnTypesF>(Param);                                                  \
294
511
  }                                                                            \
clang::ast_matchers::parameterCountIs(unsigned int const&)
Line
Count
Source
290
100
  DefineMatcher(ParamType const &Param) {                                      \
291
100
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
100
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
100
        ReturnTypesF>(Param);                                                  \
294
100
  }                                                                            \
clang::ast_matchers::hasInitStatement(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
290
52
  DefineMatcher(ParamType const &Param) {                                      \
291
52
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
52
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
52
        ReturnTypesF>(Param);                                                  \
294
52
  }                                                                            \
clang::ast_matchers::hasAnySubstatement(clang::ast_matchers::internal::Matcher<clang::Stmt> const&)
Line
Count
Source
290
99
  DefineMatcher(ParamType const &Param) {                                      \
291
99
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
99
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
99
        ReturnTypesF>(Param);                                                  \
294
99
  }                                                                            \
clang::ast_matchers::equals(bool const&)
Line
Count
Source
290
78
  DefineMatcher(ParamType const &Param) {                                      \
291
78
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
78
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
78
        ReturnTypesF>(Param);                                                  \
294
78
  }                                                                            \
clang::ast_matchers::equals(unsigned int const&)
Line
Count
Source
290
3
  DefineMatcher(ParamType const &Param) {                                      \
291
3
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
3
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
3
        ReturnTypesF>(Param);                                                  \
294
3
  }                                                                            \
clang::ast_matchers::equals(double const&)
Line
Count
Source
290
69
  DefineMatcher(ParamType const &Param) {                                      \
291
69
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
69
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
69
        ReturnTypesF>(Param);                                                  \
294
69
  }                                                                            \
clang::ast_matchers::hasObjectExpression(clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
290
1.89k
  DefineMatcher(ParamType const &Param) {                                      \
291
1.89k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
1.89k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
1.89k
        ReturnTypesF>(Param);                                                  \
294
1.89k
  }                                                                            \
clang::ast_matchers::hasSize(unsigned int const&)
Line
Count
Source
290
71
  DefineMatcher(ParamType const &Param) {                                      \
291
71
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
292
71
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
293
71
        ReturnTypesF>(Param);                                                  \
294
71
  }                                                                            \
295
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<       \
296
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,       \
297
      ReturnTypesF>(&DefineMatcher##_Type##OverloadId)(                        \
298
      ParamType const &Param);                                                 \
299
  template <typename NodeType, typename ParamT>                                \
300
  bool internal::                                                              \
301
      matcher_##DefineMatcher##OverloadId##Matcher<NodeType, ParamT>::matches( \
302
          const NodeType &Node,                                                \
303
          ::clang::ast_matchers::internal::ASTMatchFinder *Finder,             \
304
          ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder)     \
305
          const
306
307
/// AST_POLYMORPHIC_MATCHER_P2(
308
///     DefineMatcher, ParamType1, Param1, ParamType2, Param2) { ... }
309
/// defines a two-parameter function named matcher() that is polymorphic in
310
/// the return type.
311
///
312
/// The variables are the same as for AST_MATCHER_P2, with the
313
/// addition of NodeType, which specifies the node type of the matcher
314
/// Matcher<NodeType> returned by the function DefineMatcher().
315
#define AST_POLYMORPHIC_MATCHER_P2(DefineMatcher, ReturnTypesF, ParamType1,    \
316
                                   Param1, ParamType2, Param2)                 \
317
  AST_POLYMORPHIC_MATCHER_P2_OVERLOAD(DefineMatcher, ReturnTypesF, ParamType1, \
318
                                      Param1, ParamType2, Param2, 0)
319
320
#define AST_POLYMORPHIC_MATCHER_P2_OVERLOAD(DefineMatcher, ReturnTypesF,       \
321
                                            ParamType1, Param1, ParamType2,    \
322
                                            Param2, OverloadId)                \
323
  namespace internal {                                                         \
324
  template <typename NodeType, typename ParamT1, typename ParamT2>             \
325
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
326
      : public ::clang::ast_matchers::internal::MatcherInterface<NodeType> {   \
327
  public:                                                                      \
328
    matcher_##DefineMatcher##OverloadId##Matcher(ParamType1 const &A##Param1,  \
329
                                                 ParamType2 const &A##Param2)  \
330
19.3k
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::CallExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
330
835
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_forEachArgumentWithParam0Matcher<clang::CallExpr, clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_forEachArgumentWithParam0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
330
16.2k
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::CXXConstructorDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
330
242
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::FunctionDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
330
279
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_forEachArgumentWithParam0Matcher<clang::CXXConstructExpr, clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_forEachArgumentWithParam0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
330
130
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_forEachArgumentWithParamType0Matcher<clang::CallExpr, clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_forEachArgumentWithParamType0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
330
338
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_forEachArgumentWithParamType0Matcher<clang::CXXConstructExpr, clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::QualType> >::matcher_forEachArgumentWithParamType0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
330
331
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::CXXConstructExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
330
40
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::CXXUnresolvedConstructExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
330
2
        : Param1(A##Param1), Param2(A##Param2) {}                              \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::ObjCMessageExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
clang::ast_matchers::internal::matcher_hasOperands0Matcher<clang::BinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasOperands0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
330
33
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasOperands0Matcher<clang::CXXOperatorCallExpr, clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasOperands0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
330
34
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasOperands0Matcher<clang::CXXRewrittenBinaryOperator, clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasOperands0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
330
14
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::ObjCMethodDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
330
4
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::BlockDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
330
4
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasTemplateArgument0Matcher<clang::ClassTemplateSpecializationDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasTemplateArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
330
8
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasTemplateArgument0Matcher<clang::TemplateSpecializationType, unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasTemplateArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
330
2
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasTemplateArgument0Matcher<clang::FunctionDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasTemplateArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
330
3
        : Param1(A##Param1), Param2(A##Param2) {}                              \
clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::CXXOperatorCallExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
330
811
        : Param1(A##Param1), Param2(A##Param2) {}                              \
331
    bool matches(const NodeType &Node,                                         \
332
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
333
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
334
                     *Builder) const override;                                 \
335
                                                                               \
336
  private:                                                                     \
337
    ParamType1 const Param1;                                                   \
338
    ParamType2 const Param2;                                                   \
339
  };                                                                           \
340
  }                                                                            \
341
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<        \
342
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,      \
343
      ParamType2, ReturnTypesF>                                                \
344
18.8k
  DefineMatcher(ParamType1 const &Param1, ParamType2 const &Param2) {          \
345
18.8k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
346
18.8k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
347
18.8k
        ParamType2, ReturnTypesF>(Param1, Param2);                             \
348
18.8k
  }                                                                            \
clang::ast_matchers::hasArgument(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
344
1.67k
  DefineMatcher(ParamType1 const &Param1, ParamType2 const &Param2) {          \
345
1.67k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
346
1.67k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
347
1.67k
        ParamType2, ReturnTypesF>(Param1, Param2);                             \
348
1.67k
  }                                                                            \
clang::ast_matchers::forEachArgumentWithParam(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
344
16.2k
  DefineMatcher(ParamType1 const &Param1, ParamType2 const &Param2) {          \
345
16.2k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
346
16.2k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
347
16.2k
        ParamType2, ReturnTypesF>(Param1, Param2);                             \
348
16.2k
  }                                                                            \
clang::ast_matchers::hasParameter(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> const&)
Line
Count
Source
344
546
  DefineMatcher(ParamType1 const &Param1, ParamType2 const &Param2) {          \
345
546
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
346
546
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
347
546
        ParamType2, ReturnTypesF>(Param1, Param2);                             \
348
546
  }                                                                            \
clang::ast_matchers::hasTemplateArgument(unsigned int const&, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> const&)
Line
Count
Source
344
13
  DefineMatcher(ParamType1 const &Param1, ParamType2 const &Param2) {          \
345
13
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
346
13
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
347
13
        ParamType2, ReturnTypesF>(Param1, Param2);                             \
348
13
  }                                                                            \
clang::ast_matchers::forEachArgumentWithParamType(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::QualType> const&)
Line
Count
Source
344
339
  DefineMatcher(ParamType1 const &Param1, ParamType2 const &Param2) {          \
345
339
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
346
339
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
347
339
        ParamType2, ReturnTypesF>(Param1, Param2);                             \
348
339
  }                                                                            \
clang::ast_matchers::hasOperands(clang::ast_matchers::internal::Matcher<clang::Expr> const&, clang::ast_matchers::internal::Matcher<clang::Expr> const&)
Line
Count
Source
344
47
  DefineMatcher(ParamType1 const &Param1, ParamType2 const &Param2) {          \
345
47
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
346
47
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
347
47
        ParamType2, ReturnTypesF>(Param1, Param2);                             \
348
47
  }                                                                            \
349
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<       \
350
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,      \
351
      ParamType2, ReturnTypesF>(&DefineMatcher##_Type##OverloadId)(            \
352
      ParamType1 const &Param1, ParamType2 const &Param2);                     \
353
  template <typename NodeType, typename ParamT1, typename ParamT2>             \
354
  bool internal::matcher_##DefineMatcher##OverloadId##Matcher<                 \
355
      NodeType, ParamT1, ParamT2>::                                            \
356
      matches(const NodeType &Node,                                            \
357
              ::clang::ast_matchers::internal::ASTMatchFinder *Finder,         \
358
              ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) \
359
          const
360
361
// FIXME: add a matcher for TypeLoc derived classes using its custom casting
362
// API (no longer dyn_cast) if/when we need such matching
363
364
#define AST_TYPE_TRAVERSE_MATCHER_DECL(MatcherName, FunctionName,              \
365
                                       ReturnTypesF)                           \
366
  namespace internal {                                                         \
367
  template <typename T> struct TypeMatcher##MatcherName##Getter {              \
368
3.44k
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::ObjCObjectPointerType>::value()
Line
Count
Source
368
257
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::PointerType>::value()
Line
Count
Source
368
945
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasElementTypeGetter<clang::ArrayType>::value()
Line
Count
Source
368
85
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasElementTypeGetter<clang::ComplexType>::value()
Line
Count
Source
368
29
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasValueTypeGetter<clang::AtomicType>::value()
Line
Count
Source
368
28
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::BlockPointerType>::value()
Line
Count
Source
368
1
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::MemberPointerType>::value()
Line
Count
Source
368
1
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::ReferenceType>::value()
Line
Count
Source
368
2.10k
    static QualType (T::*value())() const { return &T::FunctionName; }         \
369
  };                                                                           \
370
  }                                                                            \
371
  extern const ::clang::ast_matchers::internal::                               \
372
      TypeTraversePolymorphicMatcher<                                          \
373
          QualType,                                                            \
374
          ::clang::ast_matchers::internal::TypeMatcher##MatcherName##Getter,   \
375
          ::clang::ast_matchers::internal::TypeTraverseMatcher,                \
376
          ReturnTypesF>::Func MatcherName
377
378
#define AST_TYPE_TRAVERSE_MATCHER_DEF(MatcherName, ReturnTypesF)               \
379
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
380
      QualType,                                                                \
381
      ::clang::ast_matchers::internal::TypeMatcher##MatcherName##Getter,       \
382
      ::clang::ast_matchers::internal::TypeTraverseMatcher,                    \
383
      ReturnTypesF>::Func MatcherName
384
385
/// AST_TYPE_TRAVERSE_MATCHER(MatcherName, FunctionName) defines
386
/// the matcher \c MatcherName that can be used to traverse from one \c Type
387
/// to another.
388
///
389
/// For a specific \c SpecificType, the traversal is done using
390
/// \c SpecificType::FunctionName. The existence of such a function determines
391
/// whether a corresponding matcher can be used on \c SpecificType.
392
#define AST_TYPE_TRAVERSE_MATCHER(MatcherName, FunctionName, ReturnTypesF)     \
393
  namespace internal {                                                         \
394
  template <typename T> struct TypeMatcher##MatcherName##Getter {              \
395
41
    static QualType (T::*value())() const { return &T::FunctionName; }         \
Unexecuted instantiation: clang::ast_matchers::internal::TypeMatcherhasDeducedTypeGetter<clang::AutoType>::value()
clang::ast_matchers::internal::TypeMatcherhasReplacementTypeGetter<clang::SubstTemplateTypeParmType>::value()
Line
Count
Source
395
3
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasUnderlyingTypeGetter<clang::DecltypeType>::value()
Line
Count
Source
395
8
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherinnerTypeGetter<clang::ParenType>::value()
Line
Count
Source
395
30
    static QualType (T::*value())() const { return &T::FunctionName; }         \
396
  };                                                                           \
397
  }                                                                            \
398
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
399
      QualType,                                                                \
400
      ::clang::ast_matchers::internal::TypeMatcher##MatcherName##Getter,       \
401
      ::clang::ast_matchers::internal::TypeTraverseMatcher,                    \
402
      ReturnTypesF>::Func MatcherName
403
404
#define AST_TYPELOC_TRAVERSE_MATCHER_DECL(MatcherName, FunctionName,           \
405
                                          ReturnTypesF)                        \
406
  namespace internal {                                                         \
407
  template <typename T> struct TypeLocMatcher##MatcherName##Getter {           \
408
    static TypeLoc (T::*value())() const { return &T::FunctionName##Loc; }     \
409
  };                                                                           \
410
  }                                                                            \
411
  extern const ::clang::ast_matchers::internal::                               \
412
      TypeTraversePolymorphicMatcher<                                          \
413
          TypeLoc,                                                             \
414
          ::clang::ast_matchers::internal::                                    \
415
              TypeLocMatcher##MatcherName##Getter,                             \
416
          ::clang::ast_matchers::internal::TypeLocTraverseMatcher,             \
417
          ReturnTypesF>::Func MatcherName##Loc;                                \
418
  AST_TYPE_TRAVERSE_MATCHER_DECL(MatcherName, FunctionName##Type, ReturnTypesF)
419
420
#define AST_TYPELOC_TRAVERSE_MATCHER_DEF(MatcherName, ReturnTypesF)            \
421
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
422
      TypeLoc,                                                                 \
423
      ::clang::ast_matchers::internal::TypeLocMatcher##MatcherName##Getter,    \
424
      ::clang::ast_matchers::internal::TypeLocTraverseMatcher,                 \
425
      ReturnTypesF>::Func MatcherName##Loc;                                    \
426
  AST_TYPE_TRAVERSE_MATCHER_DEF(MatcherName, ReturnTypesF)
427
428
/// AST_TYPELOC_TRAVERSE_MATCHER(MatcherName, FunctionName) works
429
/// identical to \c AST_TYPE_TRAVERSE_MATCHER but operates on \c TypeLocs.
430
#define AST_TYPELOC_TRAVERSE_MATCHER(MatcherName, FunctionName, ReturnTypesF)  \
431
  namespace internal {                                                         \
432
  template <typename T> struct TypeLocMatcher##MatcherName##Getter {           \
433
    static TypeLoc (T::*value())() const { return &T::FunctionName##Loc; }     \
434
  };                                                                           \
435
  }                                                                            \
436
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
437
      TypeLoc,                                                                 \
438
      ::clang::ast_matchers::internal::TypeLocMatcher##MatcherName##Getter,    \
439
      ::clang::ast_matchers::internal::TypeLocTraverseMatcher,                 \
440
      ReturnTypesF>::Func MatcherName##Loc;                                    \
441
  AST_TYPE_TRAVERSE_MATCHER(MatcherName, FunctionName##Type, ReturnTypesF)
442
443
/// AST_MATCHER_REGEX(Type, DefineMatcher, Param) { ... }
444
/// defines a function named DefineMatcher() that takes a regular expression
445
/// string paramater and an optional RegexFlags parameter and returns a
446
/// Matcher<Type> object.
447
///
448
/// The code between the curly braces has access to the following variables:
449
///
450
///   Node:                  the AST node being matched; its type is Type.
451
///   Param:                 a pointer to an \ref llvm::Regex object
452
///   Finder:                an ASTMatchFinder*.
453
///   Builder:               a BoundNodesTreeBuilder*.
454
///
455
/// The code should return true if 'Node' matches.
456
#define AST_MATCHER_REGEX(Type, DefineMatcher, Param)                          \
457
  AST_MATCHER_REGEX_OVERLOAD(Type, DefineMatcher, Param, 0)
458
459
#define AST_MATCHER_REGEX_OVERLOAD(Type, DefineMatcher, Param, OverloadId)     \
460
  namespace internal {                                                         \
461
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
462
      : public ::clang::ast_matchers::internal::MatcherInterface<Type> {       \
463
  public:                                                                      \
464
    explicit matcher_##DefineMatcher##OverloadId##Matcher(                     \
465
        std::shared_ptr<llvm::Regex> RE)                                       \
466
360
        : Param(std::move(RE)) {}                                              \
clang::ast_matchers::internal::matcher_matchesName0Matcher::matcher_matchesName0Matcher(std::__1::shared_ptr<llvm::Regex>)
Line
Count
Source
466
357
        : Param(std::move(RE)) {}                                              \
clang::ast_matchers::internal::matcher_matchesSelector0Matcher::matcher_matchesSelector0Matcher(std::__1::shared_ptr<llvm::Regex>)
Line
Count
Source
466
3
        : Param(std::move(RE)) {}                                              \
467
    bool matches(const Type &Node,                                             \
468
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
469
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
470
                     *Builder) const override;                                 \
471
                                                                               \
472
  private:                                                                     \
473
    std::shared_ptr<llvm::Regex> const Param;                                  \
474
  };                                                                           \
475
  }                                                                            \
476
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher(         \
477
360
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {             \
478
360
    return ::clang::ast_matchers::internal::makeMatcher(                       \
479
360
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
480
360
            ::clang::ast_matchers::internal::createAndVerifyRegex(             \
481
360
                Param, RegexFlags, #DefineMatcher)));                          \
482
360
  }                                                                            \
clang::ast_matchers::matchesName(llvm::StringRef, llvm::Regex::RegexFlags)
Line
Count
Source
477
357
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {             \
478
357
    return ::clang::ast_matchers::internal::makeMatcher(                       \
479
357
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
480
357
            ::clang::ast_matchers::internal::createAndVerifyRegex(             \
481
357
                Param, RegexFlags, #DefineMatcher)));                          \
482
357
  }                                                                            \
clang::ast_matchers::matchesSelector(llvm::StringRef, llvm::Regex::RegexFlags)
Line
Count
Source
477
3
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {             \
478
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
479
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
480
3
            ::clang::ast_matchers::internal::createAndVerifyRegex(             \
481
3
                Param, RegexFlags, #DefineMatcher)));                          \
482
3
  }                                                                            \
483
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher(         \
484
349
      llvm::StringRef Param) {                                                 \
485
349
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
486
349
  }                                                                            \
clang::ast_matchers::matchesName(llvm::StringRef)
Line
Count
Source
484
346
      llvm::StringRef Param) {                                                 \
485
346
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
486
346
  }                                                                            \
clang::ast_matchers::matchesSelector(llvm::StringRef)
Line
Count
Source
484
3
      llvm::StringRef Param) {                                                 \
485
3
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
486
3
  }                                                                            \
487
                                                                               \
488
  typedef ::clang::ast_matchers::internal::Matcher<Type> (                     \
489
      &DefineMatcher##_Type##OverloadId##Flags)(llvm::StringRef,               \
490
                                                llvm::Regex::RegexFlags);      \
491
  typedef ::clang::ast_matchers::internal::Matcher<Type> (                     \
492
      &DefineMatcher##_Type##OverloadId)(llvm::StringRef);                     \
493
  inline bool internal::matcher_##DefineMatcher##OverloadId##Matcher::matches( \
494
      const Type &Node,                                                        \
495
      ::clang::ast_matchers::internal::ASTMatchFinder *Finder,                 \
496
      ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) const
497
498
/// AST_POLYMORPHIC_MATCHER_REGEX(DefineMatcher, ReturnTypesF, Param) { ... }
499
/// defines a function named DefineMatcher() that takes a regular expression
500
/// string paramater and an optional RegexFlags parameter that is polymorphic in
501
/// the return type.
502
///
503
/// The variables are the same as for
504
/// AST_MATCHER_REGEX, with the addition of NodeType, which specifies the node
505
/// type of the matcher Matcher<NodeType> returned by the function matcher().
506
#define AST_POLYMORPHIC_MATCHER_REGEX(DefineMatcher, ReturnTypesF, Param)      \
507
  AST_POLYMORPHIC_MATCHER_REGEX_OVERLOAD(DefineMatcher, ReturnTypesF, Param, 0)
508
509
#define AST_POLYMORPHIC_MATCHER_REGEX_OVERLOAD(DefineMatcher, ReturnTypesF,    \
510
                                               Param, OverloadId)              \
511
  namespace internal {                                                         \
512
  template <typename NodeType, typename ParamT>                                \
513
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
514
      : public ::clang::ast_matchers::internal::MatcherInterface<NodeType> {   \
515
  public:                                                                      \
516
    explicit matcher_##DefineMatcher##OverloadId##Matcher(                     \
517
        std::shared_ptr<llvm::Regex> RE)                                       \
518
0
        : Param(std::move(RE)) {}                                              \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_isExpansionInFileMatching0Matcher<clang::Decl, std::__1::shared_ptr<llvm::Regex> >::matcher_isExpansionInFileMatching0Matcher(std::__1::shared_ptr<llvm::Regex>)
Unexecuted instantiation: clang::ast_matchers::internal::matcher_isExpansionInFileMatching0Matcher<clang::Stmt, std::__1::shared_ptr<llvm::Regex> >::matcher_isExpansionInFileMatching0Matcher(std::__1::shared_ptr<llvm::Regex>)
Unexecuted instantiation: clang::ast_matchers::internal::matcher_isExpansionInFileMatching0Matcher<clang::TypeLoc, std::__1::shared_ptr<llvm::Regex> >::matcher_isExpansionInFileMatching0Matcher(std::__1::shared_ptr<llvm::Regex>)
519
    bool matches(const NodeType &Node,                                         \
520
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
521
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
522
                     *Builder) const override;                                 \
523
                                                                               \
524
  private:                                                                     \
525
    std::shared_ptr<llvm::Regex> const Param;                                  \
526
  };                                                                           \
527
  }                                                                            \
528
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<        \
529
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
530
      std::shared_ptr<llvm::Regex>, ReturnTypesF>                              \
531
2
  DefineMatcher(llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {   \
532
2
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
533
2
        internal::matcher_##DefineMatcher##OverloadId##Matcher,                \
534
2
        std::shared_ptr<llvm::Regex>, ReturnTypesF>(                           \
535
2
        ::clang::ast_matchers::internal::createAndVerifyRegex(                 \
536
2
            Param, RegexFlags, #DefineMatcher));                               \
537
2
  }                                                                            \
538
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<        \
539
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
540
      std::shared_ptr<llvm::Regex>, ReturnTypesF>                              \
541
2
  DefineMatcher(llvm::StringRef Param) {                                       \
542
2
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
543
2
  }                                                                            \
544
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<       \
545
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
546
      std::shared_ptr<llvm::Regex>, ReturnTypesF> (                            \
547
      &DefineMatcher##_Type##OverloadId##Flags)(                               \
548
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags);              \
549
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<       \
550
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
551
      std::shared_ptr<llvm::Regex>, ReturnTypesF> (                            \
552
      &DefineMatcher##_Type##OverloadId)(llvm::StringRef Param);               \
553
  template <typename NodeType, typename ParamT>                                \
554
  bool internal::                                                              \
555
      matcher_##DefineMatcher##OverloadId##Matcher<NodeType, ParamT>::matches( \
556
          const NodeType &Node,                                                \
557
          ::clang::ast_matchers::internal::ASTMatchFinder *Finder,             \
558
          ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder)     \
559
          const
560
561
#endif // LLVM_CLANG_ASTMATCHERS_ASTMATCHERSMACROS_H