Coverage Report

Created: 2020-09-19 12:23

/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
494
  inline ReturnType DefineMatcher() {                                          \
58
494
    return ::clang::ast_matchers::internal::MemoizedMatcher<                   \
59
494
        ReturnType, DefineMatcher##_getInstance>::getInstance();               \
60
494
  }                                                                            \
clang::ast_matchers::isInstantiated()
Line
Count
Source
57
444
  inline ReturnType DefineMatcher() {                                          \
58
444
    return ::clang::ast_matchers::internal::MemoizedMatcher<                   \
59
444
        ReturnType, DefineMatcher##_getInstance>::getInstance();               \
60
444
  }                                                                            \
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
26.5k
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_booleanTypeMatcher::matcher_booleanTypeMatcher()
Line
Count
Source
99
285
    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
17.7k
    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
290
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isCopyAssignmentOperatorMatcher::matcher_isCopyAssignmentOperatorMatcher()
Line
Count
Source
99
427
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isCopyConstructorMatcher::matcher_isCopyConstructorMatcher()
Line
Count
Source
99
447
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isDefaultConstructorMatcher::matcher_isDefaultConstructorMatcher()
Line
Count
Source
99
46
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isDefaultedMatcher::matcher_isDefaultedMatcher()
Line
Count
Source
99
20
    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.67k
    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.84k
    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
427
    explicit matcher_##DefineMatcher##Matcher() = default;                     \
clang::ast_matchers::internal::matcher_isMoveConstructorMatcher::matcher_isMoveConstructorMatcher()
Line
Count
Source
99
447
    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
15
    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;                     \
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
278
    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
26.5k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
26.5k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
26.5k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
26.5k
  }                                                                            \
clang::ast_matchers::booleanType()
Line
Count
Source
106
285
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
285
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
285
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
285
  }                                                                            \
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
17.7k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
17.7k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
17.7k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
17.7k
  }                                                                            \
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()
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.84k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1.84k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1.84k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1.84k
  }                                                                            \
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
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::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.67k
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
1.67k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
1.67k
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
1.67k
  }                                                                            \
clang::ast_matchers::isDefaulted()
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::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
290
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
290
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
290
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
290
  }                                                                            \
clang::ast_matchers::isCopyAssignmentOperator()
Line
Count
Source
106
427
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
427
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
427
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
427
  }                                                                            \
clang::ast_matchers::isMoveAssignmentOperator()
Line
Count
Source
106
427
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
427
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
427
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
427
  }                                                                            \
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
447
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
447
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
447
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
447
  }                                                                            \
clang::ast_matchers::isMoveConstructor()
Line
Count
Source
106
447
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
447
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
447
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
447
  }                                                                            \
clang::ast_matchers::isDefaultConstructor()
Line
Count
Source
106
46
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
46
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
46
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
46
  }                                                                            \
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
278
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher() {      \
107
278
    return ::clang::ast_matchers::internal::makeMatcher(                       \
108
278
        new internal::matcher_##DefineMatcher##Matcher());                     \
109
278
  }                                                                            \
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(ParamType A##Param)  \
138
184k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ignoringParenCasts0Matcher::matcher_ignoringParenCasts0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
459
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasConditionVariableStatement0Matcher::matcher_hasConditionVariableStatement0Matcher(clang::ast_matchers::internal::Matcher<clang::DeclStmt>)
Line
Count
Source
138
260
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasTrueExpression0Matcher::matcher_hasTrueExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
427
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasFalseExpression0Matcher::matcher_hasFalseExpression0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
438
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasLoopVariable0Matcher::matcher_hasLoopVariable0Matcher(clang::ast_matchers::internal::Matcher<clang::VarDecl>)
Line
Count
Source
138
148
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasRangeInit0Matcher::matcher_hasRangeInit0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
148
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasSelector0Matcher::matcher_hasSelector0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
138
868
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasReceiverType0Matcher::matcher_hasReceiverType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
432
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_asString0Matcher::matcher_asString0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
138
726
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasReceiver0Matcher::matcher_hasReceiver0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
434
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasLoopInit0Matcher::matcher_hasLoopInit0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
138
167
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasSingleDecl0Matcher::matcher_hasSingleDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
435
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasInitializer0Matcher::matcher_hasInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
17.0k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ignoringParenImpCasts0Matcher::matcher_ignoringParenImpCasts0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
3.53k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasIncrement0Matcher::matcher_hasIncrement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
138
165
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasUnaryOperand0Matcher::matcher_hasUnaryOperand0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
17.2k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_callee1Matcher::matcher_callee1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
4.53k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equalsNode0Matcher::matcher_equalsNode0Matcher(clang::Decl const*)
Line
Count
Source
138
48.0k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasCanonicalType0Matcher::matcher_hasCanonicalType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
2.23k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_to0Matcher::matcher_to0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
50.5k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_pointsTo0Matcher::matcher_pointsTo0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
449
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_references0Matcher::matcher_references0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
16.3k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_onImplicitObjectArgument0Matcher::matcher_onImplicitObjectArgument0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
144
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_pointsTo1Matcher::matcher_pointsTo1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
240
        : Param(std::move(A##Param)) {}                                        \
Unexecuted instantiation: clang::ast_matchers::internal::matcher_thisPointerType0Matcher::matcher_thisPointerType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
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> > > >)
Line
Count
Source
138
252
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_isExpandedFromMacro0Matcher::matcher_isExpandedFromMacro0Matcher(llvm::StringRef)
Line
Count
Source
138
179
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasBitWidth0Matcher::matcher_hasBitWidth0Matcher(unsigned int)
Line
Count
Source
138
14
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasInClassInitializer0Matcher::matcher_hasInClassInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
20
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasSpecializedTemplate0Matcher::matcher_hasSpecializedTemplate0Matcher(clang::ast_matchers::internal::Matcher<clang::ClassTemplateDecl>)
Line
Count
Source
138
5
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ignoringImplicit0Matcher::matcher_ignoringImplicit0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
14
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ignoringImpCasts0Matcher::matcher_ignoringImpCasts0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
183
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ignoringParens0Matcher::matcher_ignoringParens0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
14
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ignoringParens1Matcher::matcher_ignoringParens1Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
14
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_refersToType0Matcher::matcher_refersToType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
9
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_refersToTemplate0Matcher::matcher_refersToTemplate0Matcher(clang::ast_matchers::internal::Matcher<clang::TemplateName>)
Line
Count
Source
138
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_refersToDeclaration0Matcher::matcher_refersToDeclaration0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_isExpr0Matcher::matcher_isExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_refersToIntegralType0Matcher::matcher_refersToIntegralType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
2
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equalsIntegralValue0Matcher::matcher_equalsIntegralValue0Matcher(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
138
40
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasSyntacticForm0Matcher::matcher_hasSyntacticForm0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
2
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_designatorCountIs0Matcher::matcher_designatorCountIs0Matcher(unsigned int)
Line
Count
Source
138
18
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasArgumentOfType0Matcher::matcher_hasArgumentOfType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
334
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ofKind0Matcher::matcher_ofKind0Matcher(clang::UnaryExprOrTypeTrait)
Line
Count
Source
138
363
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyBase0Matcher::matcher_hasAnyBase0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier>)
Line
Count
Source
138
190
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasDirectBase0Matcher::matcher_hasDirectBase0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier>)
Line
Count
Source
138
50
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasMethod0Matcher::matcher_hasMethod0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl>)
Line
Count
Source
138
1.67k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasUnderlyingDecl0Matcher::matcher_hasUnderlyingDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl>)
Line
Count
Source
138
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_on0Matcher::matcher_on0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
379
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_numSelectorArgs0Matcher::matcher_numSelectorArgs0Matcher(unsigned int)
Line
Count
Source
138
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_callee0Matcher::matcher_callee0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
138
543
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasTypeLoc0Matcher::matcher_hasTypeLoc0Matcher(clang::ast_matchers::internal::Matcher<clang::TypeLoc>)
Line
Count
Source
138
5
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasUnqualifiedDesugaredType0Matcher::matcher_hasUnqualifiedDesugaredType0Matcher(clang::ast_matchers::internal::Matcher<clang::Type>)
Line
Count
Source
138
1.42k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_references1Matcher::matcher_references1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
11
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_thisPointerType1Matcher::matcher_thisPointerType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
20
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_throughUsingDecl0Matcher::matcher_throughUsingDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl>)
Line
Count
Source
138
2
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyDeclaration0Matcher::matcher_hasAnyDeclaration0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
7
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_declCountIs0Matcher::matcher_declCountIs0Matcher(unsigned int)
Line
Count
Source
138
42
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyConstructorInitializer0Matcher::matcher_hasAnyConstructorInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer>)
Line
Count
Source
138
18
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_forField0Matcher::matcher_forField0Matcher(clang::ast_matchers::internal::Matcher<clang::FieldDecl>)
Line
Count
Source
138
20
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_withInitializer0Matcher::matcher_withInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyCapture0Matcher::matcher_hasAnyCapture0Matcher(clang::ast_matchers::internal::Matcher<clang::VarDecl>)
Line
Count
Source
138
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyCapture1Matcher::matcher_hasAnyCapture1Matcher(clang::ast_matchers::internal::Matcher<clang::CXXThisExpr>)
Line
Count
Source
138
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_isAtPosition0Matcher::matcher_isAtPosition0Matcher(unsigned int)
Line
Count
Source
138
186
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_returns0Matcher::matcher_returns0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
490
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasThen0Matcher::matcher_hasThen0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
138
8
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasElse0Matcher::matcher_hasElse0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
138
7
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasIndex0Matcher::matcher_hasIndex0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasBase0Matcher::matcher_hasBase0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
159
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_statementCountIs0Matcher::matcher_statementCountIs0Matcher(unsigned int)
Line
Count
Source
138
140
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasCastKind0Matcher::matcher_hasCastKind0Matcher(clang::CastKind)
Line
Count
Source
138
583
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasDestinationType0Matcher::matcher_hasDestinationType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
158
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasImplicitDestinationType0Matcher::matcher_hasImplicitDestinationType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
161
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ofClass0Matcher::matcher_ofClass0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXRecordDecl>)
Line
Count
Source
138
524
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_forEachOverridden0Matcher::matcher_forEachOverridden0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl>)
Line
Count
Source
138
8
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_member0Matcher::matcher_member0Matcher(clang::ast_matchers::internal::Matcher<clang::ValueDecl>)
Line
Count
Source
138
33
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyUsingShadowDecl0Matcher::matcher_hasAnyUsingShadowDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl>)
Line
Count
Source
138
13
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasTargetDecl0Matcher::matcher_hasTargetDecl0Matcher(clang::ast_matchers::internal::Matcher<clang::NamedDecl>)
Line
Count
Source
138
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasSizeExpr0Matcher::matcher_hasSizeExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
14
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasQualifier0Matcher::matcher_hasQualifier0Matcher(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier>)
Line
Count
Source
138
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_namesType0Matcher::matcher_namesType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
2
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasDecayedType0Matcher::matcher_hasDecayedType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
14
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasDeclContext0Matcher::matcher_hasDeclContext0Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
138
45
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_specifiesType0Matcher::matcher_specifiesType0Matcher(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
138
32
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_specifiesTypeLoc0Matcher::matcher_specifiesTypeLoc0Matcher(clang::ast_matchers::internal::Matcher<clang::TypeLoc>)
Line
Count
Source
138
20
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasPrefix0Matcher::matcher_hasPrefix0Matcher(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier>)
Line
Count
Source
138
12
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasPrefix1Matcher::matcher_hasPrefix1Matcher(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifierLoc>)
Line
Count
Source
138
20
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_specifiesNamespace0Matcher::matcher_specifiesNamespace0Matcher(clang::ast_matchers::internal::Matcher<clang::NamespaceDecl>)
Line
Count
Source
138
18
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equalsNode1Matcher::matcher_equalsNode1Matcher(clang::Stmt const*)
Line
Count
Source
138
5.77k
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_forEachSwitchCase0Matcher::matcher_forEachSwitchCase0Matcher(clang::ast_matchers::internal::Matcher<clang::SwitchCase>)
Line
Count
Source
138
8
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_forEachConstructorInitializer0Matcher::matcher_forEachConstructorInitializer0Matcher(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer>)
Line
Count
Source
138
2
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasExplicitSpecifier0Matcher::matcher_hasExplicitSpecifier0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
11
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasCaseConstant0Matcher::matcher_hasCaseConstant0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAttr0Matcher::matcher_hasAttr0Matcher(clang::attr::Kind)
Line
Count
Source
138
34
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasReturnValue0Matcher::matcher_hasReturnValue0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
285
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_forFunction0Matcher::matcher_forFunction0Matcher(clang::ast_matchers::internal::Matcher<clang::FunctionDecl>)
Line
Count
Source
138
27
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyPlacementArg0Matcher::matcher_hasAnyPlacementArg0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasArraySize0Matcher::matcher_hasArraySize0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
11
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_ignoringElidableConstructorCall0Matcher::matcher_ignoringElidableConstructorCall0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
10
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasStructuredBlock0Matcher::matcher_hasStructuredBlock0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
138
56
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasAnyClause0Matcher::matcher_hasAnyClause0Matcher(clang::ast_matchers::internal::Matcher<clang::OMPClause>)
Line
Count
Source
138
44
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_isAllowedToContainClauseKind0Matcher::matcher_isAllowedToContainClauseKind0Matcher(llvm::omp::Clause)
Line
Count
Source
138
14
        : Param(std::move(A##Param)) {}                                        \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_hasControllingExpr0Matcher::matcher_hasControllingExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
278
        : Param(std::move(A##Param)) {}                                        \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_maybeEvalCommaExpr0Matcher::matcher_maybeEvalCommaExpr0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
138
3.51k
        : Param(std::move(A##Param)) {}                                        \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_hasCaptureInit0Matcher::matcher_hasCaptureInit0Matcher(clang::Expr const*)
Line
Count
Source
138
270
        : Param(std::move(A##Param)) {}                                        \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::internal::matcher_hasRangeStmt0Matcher::matcher_hasRangeStmt0Matcher(clang::ast_matchers::internal::Matcher<clang::DeclStmt>)
Line
Count
Source
138
142
        : Param(std::move(A##Param)) {}                                        \
139
    bool matches(const Type &Node,                                             \
140
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
141
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
142
                     *Builder) const override;                                 \
143
                                                                               \
144
  private:                                                                     \
145
    ParamType const Param;                                                     \
146
  };                                                                           \
147
  }                                                                            \
148
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher(         \
149
184k
      ParamType Param) {                                                       \
150
184k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
184k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
184k
            std::move(Param)));                                                \
153
184k
  }                                                                            \
clang::ast_matchers::ignoringParenCasts(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
459
      ParamType Param) {                                                       \
150
459
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
459
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
459
            std::move(Param)));                                                \
153
459
  }                                                                            \
clang::ast_matchers::hasConditionVariableStatement(clang::ast_matchers::internal::Matcher<clang::DeclStmt>)
Line
Count
Source
149
260
      ParamType Param) {                                                       \
150
260
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
260
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
260
            std::move(Param)));                                                \
153
260
  }                                                                            \
clang::ast_matchers::hasTrueExpression(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
427
      ParamType Param) {                                                       \
150
427
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
427
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
427
            std::move(Param)));                                                \
153
427
  }                                                                            \
clang::ast_matchers::hasFalseExpression(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
438
      ParamType Param) {                                                       \
150
438
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
438
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
438
            std::move(Param)));                                                \
153
438
  }                                                                            \
clang::ast_matchers::hasLoopVariable(clang::ast_matchers::internal::Matcher<clang::VarDecl>)
Line
Count
Source
149
148
      ParamType Param) {                                                       \
150
148
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
148
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
148
            std::move(Param)));                                                \
153
148
  }                                                                            \
clang::ast_matchers::hasRangeInit(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
148
      ParamType Param) {                                                       \
150
148
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
148
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
148
            std::move(Param)));                                                \
153
148
  }                                                                            \
clang::ast_matchers::hasSelector(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
149
868
      ParamType Param) {                                                       \
150
868
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
868
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
868
            std::move(Param)));                                                \
153
868
  }                                                                            \
clang::ast_matchers::hasReceiverType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
432
      ParamType Param) {                                                       \
150
432
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
432
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
432
            std::move(Param)));                                                \
153
432
  }                                                                            \
clang::ast_matchers::asString(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
149
726
      ParamType Param) {                                                       \
150
726
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
726
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
726
            std::move(Param)));                                                \
153
726
  }                                                                            \
clang::ast_matchers::hasReceiver(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
434
      ParamType Param) {                                                       \
150
434
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
434
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
434
            std::move(Param)));                                                \
153
434
  }                                                                            \
clang::ast_matchers::hasLoopInit(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
149
167
      ParamType Param) {                                                       \
150
167
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
167
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
167
            std::move(Param)));                                                \
153
167
  }                                                                            \
clang::ast_matchers::hasSingleDecl(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
435
      ParamType Param) {                                                       \
150
435
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
435
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
435
            std::move(Param)));                                                \
153
435
  }                                                                            \
clang::ast_matchers::hasInitializer(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
17.0k
      ParamType Param) {                                                       \
150
17.0k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
17.0k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
17.0k
            std::move(Param)));                                                \
153
17.0k
  }                                                                            \
clang::ast_matchers::ignoringParenImpCasts(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
3.53k
      ParamType Param) {                                                       \
150
3.53k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3.53k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3.53k
            std::move(Param)));                                                \
153
3.53k
  }                                                                            \
clang::ast_matchers::hasIncrement(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
149
165
      ParamType Param) {                                                       \
150
165
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
165
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
165
            std::move(Param)));                                                \
153
165
  }                                                                            \
clang::ast_matchers::hasUnaryOperand(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
17.2k
      ParamType Param) {                                                       \
150
17.2k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
17.2k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
17.2k
            std::move(Param)));                                                \
153
17.2k
  }                                                                            \
clang::ast_matchers::callee(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
4.53k
      ParamType Param) {                                                       \
150
4.53k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
4.53k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
4.53k
            std::move(Param)));                                                \
153
4.53k
  }                                                                            \
clang::ast_matchers::equalsNode(clang::Decl const*)
Line
Count
Source
149
48.0k
      ParamType Param) {                                                       \
150
48.0k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
48.0k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
48.0k
            std::move(Param)));                                                \
153
48.0k
  }                                                                            \
clang::ast_matchers::hasCanonicalType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
2.23k
      ParamType Param) {                                                       \
150
2.23k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
2.23k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
2.23k
            std::move(Param)));                                                \
153
2.23k
  }                                                                            \
clang::ast_matchers::to(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
50.5k
      ParamType Param) {                                                       \
150
50.5k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
50.5k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
50.5k
            std::move(Param)));                                                \
153
50.5k
  }                                                                            \
clang::ast_matchers::pointsTo(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
449
      ParamType Param) {                                                       \
150
449
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
449
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
449
            std::move(Param)));                                                \
153
449
  }                                                                            \
clang::ast_matchers::references(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
16.3k
      ParamType Param) {                                                       \
150
16.3k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
16.3k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
16.3k
            std::move(Param)));                                                \
153
16.3k
  }                                                                            \
clang::ast_matchers::onImplicitObjectArgument(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
144
      ParamType Param) {                                                       \
150
144
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
144
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
144
            std::move(Param)));                                                \
153
144
  }                                                                            \
clang::ast_matchers::pointsTo(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
240
      ParamType Param) {                                                       \
150
240
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
240
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
240
            std::move(Param)));                                                \
153
240
  }                                                                            \
Unexecuted instantiation: clang::ast_matchers::thisPointerType(clang::ast_matchers::internal::Matcher<clang::QualType>)
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> > > >)
Line
Count
Source
149
252
      ParamType Param) {                                                       \
150
252
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
252
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
252
            std::move(Param)));                                                \
153
252
  }                                                                            \
clang::ast_matchers::isExpandedFromMacro(llvm::StringRef)
Line
Count
Source
149
179
      ParamType Param) {                                                       \
150
179
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
179
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
179
            std::move(Param)));                                                \
153
179
  }                                                                            \
clang::ast_matchers::hasBitWidth(unsigned int)
Line
Count
Source
149
14
      ParamType Param) {                                                       \
150
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
14
            std::move(Param)));                                                \
153
14
  }                                                                            \
clang::ast_matchers::hasInClassInitializer(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
20
      ParamType Param) {                                                       \
150
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
20
            std::move(Param)));                                                \
153
20
  }                                                                            \
clang::ast_matchers::hasSpecializedTemplate(clang::ast_matchers::internal::Matcher<clang::ClassTemplateDecl>)
Line
Count
Source
149
5
      ParamType Param) {                                                       \
150
5
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
5
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
5
            std::move(Param)));                                                \
153
5
  }                                                                            \
clang::ast_matchers::ignoringImplicit(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
14
      ParamType Param) {                                                       \
150
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
14
            std::move(Param)));                                                \
153
14
  }                                                                            \
clang::ast_matchers::ignoringImpCasts(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
183
      ParamType Param) {                                                       \
150
183
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
183
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
183
            std::move(Param)));                                                \
153
183
  }                                                                            \
clang::ast_matchers::ignoringParens(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
14
      ParamType Param) {                                                       \
150
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
14
            std::move(Param)));                                                \
153
14
  }                                                                            \
clang::ast_matchers::ignoringParens(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
14
      ParamType Param) {                                                       \
150
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
14
            std::move(Param)));                                                \
153
14
  }                                                                            \
clang::ast_matchers::refersToType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
9
      ParamType Param) {                                                       \
150
9
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
9
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
9
            std::move(Param)));                                                \
153
9
  }                                                                            \
clang::ast_matchers::refersToTemplate(clang::ast_matchers::internal::Matcher<clang::TemplateName>)
Line
Count
Source
149
1
      ParamType Param) {                                                       \
150
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1
            std::move(Param)));                                                \
153
1
  }                                                                            \
clang::ast_matchers::refersToDeclaration(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
3
      ParamType Param) {                                                       \
150
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3
            std::move(Param)));                                                \
153
3
  }                                                                            \
clang::ast_matchers::isExpr(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
1
      ParamType Param) {                                                       \
150
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1
            std::move(Param)));                                                \
153
1
  }                                                                            \
clang::ast_matchers::refersToIntegralType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
2
      ParamType Param) {                                                       \
150
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
2
            std::move(Param)));                                                \
153
2
  }                                                                            \
clang::ast_matchers::equalsIntegralValue(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
149
40
      ParamType Param) {                                                       \
150
40
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
40
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
40
            std::move(Param)));                                                \
153
40
  }                                                                            \
clang::ast_matchers::hasSyntacticForm(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
2
      ParamType Param) {                                                       \
150
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
2
            std::move(Param)));                                                \
153
2
  }                                                                            \
clang::ast_matchers::designatorCountIs(unsigned int)
Line
Count
Source
149
18
      ParamType Param) {                                                       \
150
18
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
18
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
18
            std::move(Param)));                                                \
153
18
  }                                                                            \
clang::ast_matchers::hasArgumentOfType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
334
      ParamType Param) {                                                       \
150
334
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
334
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
334
            std::move(Param)));                                                \
153
334
  }                                                                            \
clang::ast_matchers::ofKind(clang::UnaryExprOrTypeTrait)
Line
Count
Source
149
363
      ParamType Param) {                                                       \
150
363
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
363
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
363
            std::move(Param)));                                                \
153
363
  }                                                                            \
clang::ast_matchers::hasAnyBase(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier>)
Line
Count
Source
149
190
      ParamType Param) {                                                       \
150
190
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
190
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
190
            std::move(Param)));                                                \
153
190
  }                                                                            \
clang::ast_matchers::hasDirectBase(clang::ast_matchers::internal::Matcher<clang::CXXBaseSpecifier>)
Line
Count
Source
149
50
      ParamType Param) {                                                       \
150
50
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
50
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
50
            std::move(Param)));                                                \
153
50
  }                                                                            \
clang::ast_matchers::hasMethod(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl>)
Line
Count
Source
149
1.67k
      ParamType Param) {                                                       \
150
1.67k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1.67k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1.67k
            std::move(Param)));                                                \
153
1.67k
  }                                                                            \
clang::ast_matchers::hasUnderlyingDecl(clang::ast_matchers::internal::Matcher<clang::NamedDecl>)
Line
Count
Source
149
1
      ParamType Param) {                                                       \
150
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1
            std::move(Param)));                                                \
153
1
  }                                                                            \
clang::ast_matchers::on(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
379
      ParamType Param) {                                                       \
150
379
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
379
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
379
            std::move(Param)));                                                \
153
379
  }                                                                            \
clang::ast_matchers::numSelectorArgs(unsigned int)
Line
Count
Source
149
1
      ParamType Param) {                                                       \
150
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1
            std::move(Param)));                                                \
153
1
  }                                                                            \
clang::ast_matchers::callee(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
149
543
      ParamType Param) {                                                       \
150
543
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
543
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
543
            std::move(Param)));                                                \
153
543
  }                                                                            \
clang::ast_matchers::hasTypeLoc(clang::ast_matchers::internal::Matcher<clang::TypeLoc>)
Line
Count
Source
149
5
      ParamType Param) {                                                       \
150
5
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
5
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
5
            std::move(Param)));                                                \
153
5
  }                                                                            \
clang::ast_matchers::hasUnqualifiedDesugaredType(clang::ast_matchers::internal::Matcher<clang::Type>)
Line
Count
Source
149
1.42k
      ParamType Param) {                                                       \
150
1.42k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1.42k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1.42k
            std::move(Param)));                                                \
153
1.42k
  }                                                                            \
clang::ast_matchers::references(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
11
      ParamType Param) {                                                       \
150
11
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
11
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
11
            std::move(Param)));                                                \
153
11
  }                                                                            \
clang::ast_matchers::thisPointerType(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
20
      ParamType Param) {                                                       \
150
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
20
            std::move(Param)));                                                \
153
20
  }                                                                            \
clang::ast_matchers::throughUsingDecl(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl>)
Line
Count
Source
149
2
      ParamType Param) {                                                       \
150
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
2
            std::move(Param)));                                                \
153
2
  }                                                                            \
clang::ast_matchers::hasAnyDeclaration(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
7
      ParamType Param) {                                                       \
150
7
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
7
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
7
            std::move(Param)));                                                \
153
7
  }                                                                            \
clang::ast_matchers::declCountIs(unsigned int)
Line
Count
Source
149
42
      ParamType Param) {                                                       \
150
42
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
42
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
42
            std::move(Param)));                                                \
153
42
  }                                                                            \
clang::ast_matchers::hasAnyConstructorInitializer(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer>)
Line
Count
Source
149
18
      ParamType Param) {                                                       \
150
18
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
18
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
18
            std::move(Param)));                                                \
153
18
  }                                                                            \
clang::ast_matchers::forField(clang::ast_matchers::internal::Matcher<clang::FieldDecl>)
Line
Count
Source
149
20
      ParamType Param) {                                                       \
150
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
20
            std::move(Param)));                                                \
153
20
  }                                                                            \
clang::ast_matchers::withInitializer(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
3
      ParamType Param) {                                                       \
150
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3
            std::move(Param)));                                                \
153
3
  }                                                                            \
clang::ast_matchers::hasAnyCapture(clang::ast_matchers::internal::Matcher<clang::VarDecl>)
Line
Count
Source
149
1
      ParamType Param) {                                                       \
150
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1
            std::move(Param)));                                                \
153
1
  }                                                                            \
clang::ast_matchers::hasAnyCapture(clang::ast_matchers::internal::Matcher<clang::CXXThisExpr>)
Line
Count
Source
149
1
      ParamType Param) {                                                       \
150
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1
            std::move(Param)));                                                \
153
1
  }                                                                            \
clang::ast_matchers::isAtPosition(unsigned int)
Line
Count
Source
149
186
      ParamType Param) {                                                       \
150
186
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
186
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
186
            std::move(Param)));                                                \
153
186
  }                                                                            \
clang::ast_matchers::returns(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
490
      ParamType Param) {                                                       \
150
490
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
490
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
490
            std::move(Param)));                                                \
153
490
  }                                                                            \
clang::ast_matchers::hasThen(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
149
8
      ParamType Param) {                                                       \
150
8
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
8
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
8
            std::move(Param)));                                                \
153
8
  }                                                                            \
clang::ast_matchers::hasElse(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
149
7
      ParamType Param) {                                                       \
150
7
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
7
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
7
            std::move(Param)));                                                \
153
7
  }                                                                            \
clang::ast_matchers::hasIndex(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
3
      ParamType Param) {                                                       \
150
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3
            std::move(Param)));                                                \
153
3
  }                                                                            \
clang::ast_matchers::hasBase(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
159
      ParamType Param) {                                                       \
150
159
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
159
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
159
            std::move(Param)));                                                \
153
159
  }                                                                            \
clang::ast_matchers::statementCountIs(unsigned int)
Line
Count
Source
149
140
      ParamType Param) {                                                       \
150
140
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
140
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
140
            std::move(Param)));                                                \
153
140
  }                                                                            \
clang::ast_matchers::hasCastKind(clang::CastKind)
Line
Count
Source
149
583
      ParamType Param) {                                                       \
150
583
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
583
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
583
            std::move(Param)));                                                \
153
583
  }                                                                            \
clang::ast_matchers::hasDestinationType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
158
      ParamType Param) {                                                       \
150
158
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
158
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
158
            std::move(Param)));                                                \
153
158
  }                                                                            \
clang::ast_matchers::hasImplicitDestinationType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
161
      ParamType Param) {                                                       \
150
161
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
161
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
161
            std::move(Param)));                                                \
153
161
  }                                                                            \
clang::ast_matchers::ofClass(clang::ast_matchers::internal::Matcher<clang::CXXRecordDecl>)
Line
Count
Source
149
524
      ParamType Param) {                                                       \
150
524
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
524
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
524
            std::move(Param)));                                                \
153
524
  }                                                                            \
clang::ast_matchers::forEachOverridden(clang::ast_matchers::internal::Matcher<clang::CXXMethodDecl>)
Line
Count
Source
149
8
      ParamType Param) {                                                       \
150
8
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
8
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
8
            std::move(Param)));                                                \
153
8
  }                                                                            \
clang::ast_matchers::member(clang::ast_matchers::internal::Matcher<clang::ValueDecl>)
Line
Count
Source
149
33
      ParamType Param) {                                                       \
150
33
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
33
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
33
            std::move(Param)));                                                \
153
33
  }                                                                            \
clang::ast_matchers::hasAnyUsingShadowDecl(clang::ast_matchers::internal::Matcher<clang::UsingShadowDecl>)
Line
Count
Source
149
13
      ParamType Param) {                                                       \
150
13
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
13
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
13
            std::move(Param)));                                                \
153
13
  }                                                                            \
clang::ast_matchers::hasTargetDecl(clang::ast_matchers::internal::Matcher<clang::NamedDecl>)
Line
Count
Source
149
3
      ParamType Param) {                                                       \
150
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3
            std::move(Param)));                                                \
153
3
  }                                                                            \
clang::ast_matchers::hasSizeExpr(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
14
      ParamType Param) {                                                       \
150
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
14
            std::move(Param)));                                                \
153
14
  }                                                                            \
clang::ast_matchers::hasQualifier(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier>)
Line
Count
Source
149
3
      ParamType Param) {                                                       \
150
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3
            std::move(Param)));                                                \
153
3
  }                                                                            \
clang::ast_matchers::namesType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
2
      ParamType Param) {                                                       \
150
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
2
            std::move(Param)));                                                \
153
2
  }                                                                            \
clang::ast_matchers::hasDecayedType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
14
      ParamType Param) {                                                       \
150
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
14
            std::move(Param)));                                                \
153
14
  }                                                                            \
clang::ast_matchers::hasDeclContext(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
149
45
      ParamType Param) {                                                       \
150
45
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
45
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
45
            std::move(Param)));                                                \
153
45
  }                                                                            \
clang::ast_matchers::specifiesType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
149
32
      ParamType Param) {                                                       \
150
32
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
32
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
32
            std::move(Param)));                                                \
153
32
  }                                                                            \
clang::ast_matchers::specifiesTypeLoc(clang::ast_matchers::internal::Matcher<clang::TypeLoc>)
Line
Count
Source
149
20
      ParamType Param) {                                                       \
150
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
20
            std::move(Param)));                                                \
153
20
  }                                                                            \
clang::ast_matchers::hasPrefix(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifier>)
Line
Count
Source
149
12
      ParamType Param) {                                                       \
150
12
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
12
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
12
            std::move(Param)));                                                \
153
12
  }                                                                            \
clang::ast_matchers::hasPrefix(clang::ast_matchers::internal::Matcher<clang::NestedNameSpecifierLoc>)
Line
Count
Source
149
20
      ParamType Param) {                                                       \
150
20
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
20
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
20
            std::move(Param)));                                                \
153
20
  }                                                                            \
clang::ast_matchers::specifiesNamespace(clang::ast_matchers::internal::Matcher<clang::NamespaceDecl>)
Line
Count
Source
149
18
      ParamType Param) {                                                       \
150
18
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
18
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
18
            std::move(Param)));                                                \
153
18
  }                                                                            \
clang::ast_matchers::equalsNode(clang::Stmt const*)
Line
Count
Source
149
5.77k
      ParamType Param) {                                                       \
150
5.77k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
5.77k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
5.77k
            std::move(Param)));                                                \
153
5.77k
  }                                                                            \
clang::ast_matchers::forEachSwitchCase(clang::ast_matchers::internal::Matcher<clang::SwitchCase>)
Line
Count
Source
149
8
      ParamType Param) {                                                       \
150
8
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
8
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
8
            std::move(Param)));                                                \
153
8
  }                                                                            \
clang::ast_matchers::forEachConstructorInitializer(clang::ast_matchers::internal::Matcher<clang::CXXCtorInitializer>)
Line
Count
Source
149
2
      ParamType Param) {                                                       \
150
2
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
2
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
2
            std::move(Param)));                                                \
153
2
  }                                                                            \
clang::ast_matchers::hasExplicitSpecifier(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
11
      ParamType Param) {                                                       \
150
11
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
11
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
11
            std::move(Param)));                                                \
153
11
  }                                                                            \
clang::ast_matchers::hasCaseConstant(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
3
      ParamType Param) {                                                       \
150
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3
            std::move(Param)));                                                \
153
3
  }                                                                            \
clang::ast_matchers::hasAttr(clang::attr::Kind)
Line
Count
Source
149
34
      ParamType Param) {                                                       \
150
34
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
34
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
34
            std::move(Param)));                                                \
153
34
  }                                                                            \
clang::ast_matchers::hasReturnValue(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
285
      ParamType Param) {                                                       \
150
285
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
285
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
285
            std::move(Param)));                                                \
153
285
  }                                                                            \
clang::ast_matchers::forFunction(clang::ast_matchers::internal::Matcher<clang::FunctionDecl>)
Line
Count
Source
149
27
      ParamType Param) {                                                       \
150
27
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
27
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
27
            std::move(Param)));                                                \
153
27
  }                                                                            \
clang::ast_matchers::hasAnyPlacementArg(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
1
      ParamType Param) {                                                       \
150
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
1
            std::move(Param)));                                                \
153
1
  }                                                                            \
clang::ast_matchers::hasArraySize(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
11
      ParamType Param) {                                                       \
150
11
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
11
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
11
            std::move(Param)));                                                \
153
11
  }                                                                            \
clang::ast_matchers::ignoringElidableConstructorCall(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
10
      ParamType Param) {                                                       \
150
10
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
10
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
10
            std::move(Param)));                                                \
153
10
  }                                                                            \
clang::ast_matchers::hasStructuredBlock(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
149
56
      ParamType Param) {                                                       \
150
56
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
56
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
56
            std::move(Param)));                                                \
153
56
  }                                                                            \
clang::ast_matchers::hasAnyClause(clang::ast_matchers::internal::Matcher<clang::OMPClause>)
Line
Count
Source
149
44
      ParamType Param) {                                                       \
150
44
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
44
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
44
            std::move(Param)));                                                \
153
44
  }                                                                            \
clang::ast_matchers::isAllowedToContainClauseKind(llvm::omp::Clause)
Line
Count
Source
149
14
      ParamType Param) {                                                       \
150
14
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
14
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
14
            std::move(Param)));                                                \
153
14
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::hasControllingExpr(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
278
      ParamType Param) {                                                       \
150
278
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
278
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
278
            std::move(Param)));                                                \
153
278
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::maybeEvalCommaExpr(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
149
3.51k
      ParamType Param) {                                                       \
150
3.51k
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
3.51k
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
3.51k
            std::move(Param)));                                                \
153
3.51k
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::hasCaptureInit(clang::Expr const*)
Line
Count
Source
149
270
      ParamType Param) {                                                       \
150
270
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
270
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
270
            std::move(Param)));                                                \
153
270
  }                                                                            \
ExprMutationAnalyzer.cpp:clang::(anonymous namespace)::hasRangeStmt(clang::ast_matchers::internal::Matcher<clang::DeclStmt>)
Line
Count
Source
149
142
      ParamType Param) {                                                       \
150
142
    return ::clang::ast_matchers::internal::makeMatcher(                       \
151
142
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
152
142
            std::move(Param)));                                                \
153
142
  }                                                                            \
154
  typedef ::clang::ast_matchers::internal::Matcher<Type> (                     \
155
      &DefineMatcher##_Type##OverloadId)(ParamType 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 A##Param1,         \
187
                                                 ParamType2 A##Param2)         \
188
30
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasInit0Matcher::matcher_hasInit0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
188
24
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_containsDeclaration0Matcher::matcher_containsDeclaration0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
188
5
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasPlacementArg0Matcher::matcher_hasPlacementArg0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
188
1
        : Param1(std::move(A##Param1)), Param2(std::move(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 Param1, ParamType2 Param2) {                                  \
201
30
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
30
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
203
30
            std::move(Param1), std::move(Param2)));                            \
204
30
  }                                                                            \
clang::ast_matchers::hasInit(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
200
24
      ParamType1 Param1, ParamType2 Param2) {                                  \
201
24
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
24
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
203
24
            std::move(Param1), std::move(Param2)));                            \
204
24
  }                                                                            \
clang::ast_matchers::containsDeclaration(unsigned int, clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
200
5
      ParamType1 Param1, ParamType2 Param2) {                                  \
201
5
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
5
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
203
5
            std::move(Param1), std::move(Param2)));                            \
204
5
  }                                                                            \
clang::ast_matchers::hasPlacementArg(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
200
1
      ParamType1 Param1, ParamType2 Param2) {                                  \
201
1
    return ::clang::ast_matchers::internal::makeMatcher(                       \
202
1
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
203
1
            std::move(Param1), std::move(Param2)));                            \
204
1
  }                                                                            \
205
  typedef ::clang::ast_matchers::internal::Matcher<Type> (                     \
206
      &DefineMatcher##_Type##OverloadId)(ParamType1 Param1,                    \
207
                                         ParamType2 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.26k
  DefineMatcher() {                                                            \
245
2.26k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
2.26k
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
2.26k
  }                                                                            \
clang::ast_matchers::isAssignmentOperator()
Line
Count
Source
244
457
  DefineMatcher() {                                                            \
245
457
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
457
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
457
  }                                                                            \
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
20
  DefineMatcher() {                                                            \
245
20
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
20
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
20
  }                                                                            \
clang::ast_matchers::isDefinition()
Line
Count
Source
244
140
  DefineMatcher() {                                                            \
245
140
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
140
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
140
  }                                                                            \
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
467
  DefineMatcher() {                                                            \
245
467
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
467
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
467
  }                                                                            \
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
2
  DefineMatcher() {                                                            \
245
2
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam0<      \
246
2
        internal::matcher_##DefineMatcher##Matcher, ReturnTypesF>();           \
247
2
  }                                                                            \
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(ParamType A##Param)  \
276
83.6k
        : Param(std::move(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>)
Line
Count
Source
276
1.32k
        : Param(std::move(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>)
Line
Count
Source
276
797
        : Param(std::move(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> >)
Line
Count
Source
276
771
        : Param(std::move(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>)
Line
Count
Source
276
276
        : Param(std::move(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>)
Line
Count
Source
276
272
        : Param(std::move(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>)
Line
Count
Source
276
514
        : Param(std::move(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>)
Line
Count
Source
276
249
        : Param(std::move(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>)
Line
Count
Source
276
249
        : Param(std::move(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>)
Line
Count
Source
276
249
        : Param(std::move(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> >)
Line
Count
Source
276
182
        : Param(std::move(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>)
Line
Count
Source
276
13
        : Param(std::move(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>)
Line
Count
Source
276
9
        : Param(std::move(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>)
Line
Count
Source
276
45
        : Param(std::move(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>)
Line
Count
Source
276
135
        : Param(std::move(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> >)
Line
Count
Source
276
864
        : Param(std::move(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>)
Line
Count
Source
276
168
        : Param(std::move(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> >)
Line
Count
Source
276
2.94k
        : Param(std::move(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>)
Line
Count
Source
276
1.97k
        : Param(std::move(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>)
Line
Count
Source
276
17.8k
        : Param(std::move(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>)
Line
Count
Source
276
168
        : Param(std::move(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> >)
Line
Count
Source
276
899
        : Param(std::move(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>)
Line
Count
Source
276
2.66k
        : Param(std::move(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> >)
Line
Count
Source
276
18.1k
        : Param(std::move(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> >)
Line
Count
Source
276
696
        : Param(std::move(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>)
Line
Count
Source
276
16.8k
        : Param(std::move(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> >)
Line
Count
Source
276
1.06k
        : Param(std::move(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>)
Line
Count
Source
276
1.31k
        : Param(std::move(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>)
Line
Count
Source
276
4.61k
        : Param(std::move(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>)
Line
Count
Source
276
1.20k
        : Param(std::move(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>)
Line
Count
Source
276
308
        : Param(std::move(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>)
Line
Count
Source
276
2.28k
        : Param(std::move(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>)
Line
Count
Source
276
261
        : Param(std::move(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>)
Line
Count
Source
276
10
        : Param(std::move(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>)
Line
Count
Source
276
4
        : Param(std::move(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>)
Line
Count
Source
276
34
        : Param(std::move(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>)
Line
Count
Source
276
10
        : Param(std::move(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>)
clang::ast_matchers::internal::matcher_hasType1Matcher<clang::CXXBaseSpecifier, clang::ast_matchers::internal::Matcher<clang::Decl> >::matcher_hasType1Matcher(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
276
80
        : Param(std::move(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> >)
Line
Count
Source
276
29
        : Param(std::move(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>)
Line
Count
Source
276
390
        : Param(std::move(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>)
Line
Count
Source
276
840
        : Param(std::move(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> >)
Line
Count
Source
276
30
        : Param(std::move(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> >)
Line
Count
Source
276
28
        : Param(std::move(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> >)
Line
Count
Source
276
14
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals0Matcher<clang::CharacterLiteral, bool>::matcher_equals0Matcher(bool)
Line
Count
Source
276
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals0Matcher<clang::CXXBoolLiteralExpr, bool>::matcher_equals0Matcher(bool)
Line
Count
Source
276
58
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals0Matcher<clang::IntegerLiteral, bool>::matcher_equals0Matcher(bool)
Line
Count
Source
276
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals1Matcher<clang::CharacterLiteral, unsigned int>::matcher_equals1Matcher(unsigned int)
Line
Count
Source
276
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals1Matcher<clang::CXXBoolLiteralExpr, unsigned int>::matcher_equals1Matcher(unsigned int)
Line
Count
Source
276
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals1Matcher<clang::IntegerLiteral, unsigned int>::matcher_equals1Matcher(unsigned int)
Line
Count
Source
276
3
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::CharacterLiteral, double>::matcher_equals2Matcher(double)
Line
Count
Source
276
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::CXXBoolLiteralExpr, double>::matcher_equals2Matcher(double)
Line
Count
Source
276
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::FloatingLiteral, double>::matcher_equals2Matcher(double)
Line
Count
Source
276
69
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_equals2Matcher<clang::IntegerLiteral, double>::matcher_equals2Matcher(double)
Line
Count
Source
276
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::CallExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int)
Line
Count
Source
276
27
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::CXXConstructExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int)
Line
Count
Source
276
10
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::ObjCMessageExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int)
Line
Count
Source
276
1
        : Param(std::move(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> >)
Line
Count
Source
276
28
        : Param(std::move(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> >)
Line
Count
Source
276
20
        : Param(std::move(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> >)
Line
Count
Source
276
56
        : Param(std::move(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>)
Line
Count
Source
276
1
        : Param(std::move(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>)
Line
Count
Source
276
271
        : Param(std::move(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>)
Line
Count
Source
276
83
        : Param(std::move(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>)
Line
Count
Source
276
4
        : Param(std::move(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>)
Line
Count
Source
276
79
        : Param(std::move(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>)
Line
Count
Source
276
4
        : Param(std::move(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>)
Line
Count
Source
276
2
        : Param(std::move(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>)
Line
Count
Source
276
2
        : Param(std::move(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>)
Line
Count
Source
276
2
        : Param(std::move(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>)
Line
Count
Source
276
2
        : Param(std::move(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>)
Line
Count
Source
276
12
        : Param(std::move(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>)
Line
Count
Source
276
1
        : Param(std::move(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>)
clang::ast_matchers::internal::matcher_hasCondition0Matcher<clang::SwitchStmt, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasCondition0Matcher(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
276
1
        : Param(std::move(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>)
clang::ast_matchers::internal::matcher_hasInitStatement0Matcher<clang::IfStmt, clang::ast_matchers::internal::Matcher<clang::Stmt> >::matcher_hasInitStatement0Matcher(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
276
28
        : Param(std::move(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>)
Line
Count
Source
276
18
        : Param(std::move(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>)
Line
Count
Source
276
4
        : Param(std::move(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>)
Line
Count
Source
276
2
        : Param(std::move(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>)
Line
Count
Source
276
237
        : Param(std::move(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>)
Line
Count
Source
276
275
        : Param(std::move(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>)
Line
Count
Source
276
450
        : Param(std::move(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>)
Line
Count
Source
276
1
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasSize0Matcher<clang::ConstantArrayType, unsigned int>::matcher_hasSize0Matcher(unsigned int)
Line
Count
Source
276
47
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_hasSize0Matcher<clang::StringLiteral, unsigned int>::matcher_hasSize0Matcher(unsigned int)
Line
Count
Source
276
24
        : Param(std::move(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>)
Line
Count
Source
276
157
        : Param(std::move(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>)
Line
Count
Source
276
28
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_parameterCountIs0Matcher<clang::FunctionDecl, unsigned int>::matcher_parameterCountIs0Matcher(unsigned int)
Line
Count
Source
276
60
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_parameterCountIs0Matcher<clang::FunctionProtoType, unsigned int>::matcher_parameterCountIs0Matcher(unsigned int)
Line
Count
Source
276
26
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_templateArgumentCountIs0Matcher<clang::ClassTemplateSpecializationDecl, unsigned int>::matcher_templateArgumentCountIs0Matcher(unsigned int)
Line
Count
Source
276
20
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_templateArgumentCountIs0Matcher<clang::TemplateSpecializationType, unsigned int>::matcher_templateArgumentCountIs0Matcher(unsigned int)
Line
Count
Source
276
20
        : Param(std::move(A##Param)) {}                                        \
clang::ast_matchers::internal::matcher_argumentCountIs0Matcher<clang::CXXOperatorCallExpr, unsigned int>::matcher_argumentCountIs0Matcher(unsigned int)
Line
Count
Source
276
413
        : Param(std::move(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> >)
Line
Count
Source
276
142
        : Param(std::move(A##Param)) {}                                        \
277
    bool matches(const NodeType &Node,                                         \
278
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
279
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
280
                     *Builder) const override;                                 \
281
                                                                               \
282
  private:                                                                     \
283
    ParamType const Param;                                                     \
284
  };                                                                           \
285
  }                                                                            \
286
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<        \
287
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,       \
288
      ReturnTypesF>                                                            \
289
82.5k
  DefineMatcher(ParamType Param) {                                             \
290
82.5k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
82.5k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
82.5k
        ReturnTypesF>(std::move(Param));                                       \
293
82.5k
  }                                                                            \
clang::ast_matchers::hasAnyArgument(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
289
1.59k
  DefineMatcher(ParamType Param) {                                             \
290
1.59k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
1.59k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
1.59k
        ReturnTypesF>(std::move(Param));                                       \
293
1.59k
  }                                                                            \
clang::ast_matchers::hasAnyParameter(clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
289
257
  DefineMatcher(ParamType Param) {                                             \
290
257
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
257
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
257
        ReturnTypesF>(std::move(Param));                                       \
293
257
  }                                                                            \
clang::ast_matchers::isDerivedFrom(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
289
210
  DefineMatcher(ParamType Param) {                                             \
290
210
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
210
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
210
        ReturnTypesF>(std::move(Param));                                       \
293
210
  }                                                                            \
clang::ast_matchers::hasSourceExpression(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
289
238
  DefineMatcher(ParamType Param) {                                             \
290
238
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
238
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
238
        ReturnTypesF>(std::move(Param));                                       \
293
238
  }                                                                            \
clang::ast_matchers::hasCondition(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
289
732
  DefineMatcher(ParamType Param) {                                             \
290
732
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
732
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
732
        ReturnTypesF>(std::move(Param));                                       \
293
732
  }                                                                            \
clang::ast_matchers::equalsBoundNode(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
289
3.47k
  DefineMatcher(ParamType Param) {                                             \
290
3.47k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
3.47k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
3.47k
        ReturnTypesF>(std::move(Param));                                       \
293
3.47k
  }                                                                            \
clang::ast_matchers::hasLHS(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
289
2.66k
  DefineMatcher(ParamType Param) {                                             \
290
2.66k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
2.66k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
2.66k
        ReturnTypesF>(std::move(Param));                                       \
293
2.66k
  }                                                                            \
clang::ast_matchers::hasRHS(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
289
1.97k
  DefineMatcher(ParamType Param) {                                             \
290
1.97k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
1.97k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
1.97k
        ReturnTypesF>(std::move(Param));                                       \
293
1.97k
  }                                                                            \
clang::ast_matchers::hasOperatorName(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
289
21.1k
  DefineMatcher(ParamType Param) {                                             \
290
21.1k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
21.1k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
21.1k
        ReturnTypesF>(std::move(Param));                                       \
293
21.1k
  }                                                                            \
clang::ast_matchers::hasBody(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
289
189
  DefineMatcher(ParamType Param) {                                             \
290
189
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
189
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
189
        ReturnTypesF>(std::move(Param));                                       \
293
189
  }                                                                            \
clang::ast_matchers::hasType(clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
289
37.8k
  DefineMatcher(ParamType Param) {                                             \
290
37.8k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
37.8k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
37.8k
        ReturnTypesF>(std::move(Param));                                       \
293
37.8k
  }                                                                            \
clang::ast_matchers::hasType(clang::ast_matchers::internal::Matcher<clang::Decl>)
Line
Count
Source
289
451
  DefineMatcher(ParamType Param) {                                             \
290
451
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
451
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
451
        ReturnTypesF>(std::move(Param));                                       \
293
451
  }                                                                            \
clang::ast_matchers::isSameOrDerivedFrom(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
289
1.08k
  DefineMatcher(ParamType Param) {                                             \
290
1.08k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
1.08k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
1.08k
        ReturnTypesF>(std::move(Param));                                       \
293
1.08k
  }                                                                            \
clang::ast_matchers::isSameOrDerivedFrom(clang::ast_matchers::internal::Matcher<clang::NamedDecl>)
Line
Count
Source
289
1.61k
  DefineMatcher(ParamType Param) {                                             \
290
1.61k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
1.61k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
1.61k
        ReturnTypesF>(std::move(Param));                                       \
293
1.61k
  }                                                                            \
clang::ast_matchers::isDerivedFrom(clang::ast_matchers::internal::Matcher<clang::NamedDecl>)
Line
Count
Source
289
5.81k
  DefineMatcher(ParamType Param) {                                             \
290
5.81k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
5.81k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
5.81k
        ReturnTypesF>(std::move(Param));                                       \
293
5.81k
  }                                                                            \
clang::ast_matchers::hasAnyTemplateArgument(clang::ast_matchers::internal::Matcher<clang::TemplateArgument>)
Line
Count
Source
289
83
  DefineMatcher(ParamType Param) {                                             \
290
83
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
83
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
83
        ReturnTypesF>(std::move(Param));                                       \
293
83
  }                                                                            \
clang::ast_matchers::templateArgumentCountIs(unsigned int)
Line
Count
Source
289
40
  DefineMatcher(ParamType Param) {                                             \
290
40
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
40
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
40
        ReturnTypesF>(std::move(Param));                                       \
293
40
  }                                                                            \
clang::ast_matchers::isDirectlyDerivedFrom(clang::ast_matchers::internal::Matcher<clang::NamedDecl>)
Line
Count
Source
289
1.23k
  DefineMatcher(ParamType Param) {                                             \
290
1.23k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
1.23k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
1.23k
        ReturnTypesF>(std::move(Param));                                       \
293
1.23k
  }                                                                            \
clang::ast_matchers::isDirectlyDerivedFrom(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)
Line
Count
Source
289
58
  DefineMatcher(ParamType Param) {                                             \
290
58
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
58
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
58
        ReturnTypesF>(std::move(Param));                                       \
293
58
  }                                                                            \
clang::ast_matchers::argumentCountIs(unsigned int)
Line
Count
Source
289
451
  DefineMatcher(ParamType Param) {                                             \
290
451
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
451
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
451
        ReturnTypesF>(std::move(Param));                                       \
293
451
  }                                                                            \
clang::ast_matchers::parameterCountIs(unsigned int)
Line
Count
Source
289
100
  DefineMatcher(ParamType Param) {                                             \
290
100
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
100
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
100
        ReturnTypesF>(std::move(Param));                                       \
293
100
  }                                                                            \
clang::ast_matchers::hasInitStatement(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
289
50
  DefineMatcher(ParamType Param) {                                             \
290
50
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
50
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
50
        ReturnTypesF>(std::move(Param));                                       \
293
50
  }                                                                            \
clang::ast_matchers::hasAnySubstatement(clang::ast_matchers::internal::Matcher<clang::Stmt>)
Line
Count
Source
289
87
  DefineMatcher(ParamType Param) {                                             \
290
87
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
87
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
87
        ReturnTypesF>(std::move(Param));                                       \
293
87
  }                                                                            \
clang::ast_matchers::equals(bool)
Line
Count
Source
289
58
  DefineMatcher(ParamType Param) {                                             \
290
58
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
58
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
58
        ReturnTypesF>(std::move(Param));                                       \
293
58
  }                                                                            \
clang::ast_matchers::equals(unsigned int)
Line
Count
Source
289
3
  DefineMatcher(ParamType Param) {                                             \
290
3
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
3
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
3
        ReturnTypesF>(std::move(Param));                                       \
293
3
  }                                                                            \
clang::ast_matchers::equals(double)
Line
Count
Source
289
69
  DefineMatcher(ParamType Param) {                                             \
290
69
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
69
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
69
        ReturnTypesF>(std::move(Param));                                       \
293
69
  }                                                                            \
clang::ast_matchers::hasObjectExpression(clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
289
962
  DefineMatcher(ParamType Param) {                                             \
290
962
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
962
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
962
        ReturnTypesF>(std::move(Param));                                       \
293
962
  }                                                                            \
clang::ast_matchers::hasSize(unsigned int)
Line
Count
Source
289
71
  DefineMatcher(ParamType Param) {                                             \
290
71
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
291
71
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,     \
292
71
        ReturnTypesF>(std::move(Param));                                       \
293
71
  }                                                                            \
294
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<       \
295
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType,       \
296
      ReturnTypesF> (&DefineMatcher##_Type##OverloadId)(ParamType Param);      \
297
  template <typename NodeType, typename ParamT>                                \
298
  bool internal::                                                              \
299
      matcher_##DefineMatcher##OverloadId##Matcher<NodeType, ParamT>::matches( \
300
          const NodeType &Node,                                                \
301
          ::clang::ast_matchers::internal::ASTMatchFinder *Finder,             \
302
          ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder)     \
303
          const
304
305
/// AST_POLYMORPHIC_MATCHER_P2(
306
///     DefineMatcher, ParamType1, Param1, ParamType2, Param2) { ... }
307
/// defines a two-parameter function named matcher() that is polymorphic in
308
/// the return type.
309
///
310
/// The variables are the same as for AST_MATCHER_P2, with the
311
/// addition of NodeType, which specifies the node type of the matcher
312
/// Matcher<NodeType> returned by the function DefineMatcher().
313
#define AST_POLYMORPHIC_MATCHER_P2(DefineMatcher, ReturnTypesF, ParamType1,    \
314
                                   Param1, ParamType2, Param2)                 \
315
  AST_POLYMORPHIC_MATCHER_P2_OVERLOAD(DefineMatcher, ReturnTypesF, ParamType1, \
316
                                      Param1, ParamType2, Param2, 0)
317
318
#define AST_POLYMORPHIC_MATCHER_P2_OVERLOAD(DefineMatcher, ReturnTypesF,       \
319
                                            ParamType1, Param1, ParamType2,    \
320
                                            Param2, OverloadId)                \
321
  namespace internal {                                                         \
322
  template <typename NodeType, typename ParamT1, typename ParamT2>             \
323
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
324
      : public ::clang::ast_matchers::internal::MatcherInterface<NodeType> {   \
325
  public:                                                                      \
326
    matcher_##DefineMatcher##OverloadId##Matcher(ParamType1 A##Param1,         \
327
                                                 ParamType2 A##Param2)         \
328
19.0k
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::CallExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
328
821
        : Param1(std::move(A##Param1)), Param2(std::move(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>, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
328
16.5k
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::CXXConstructorDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
328
245
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::FunctionDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
328
278
        : Param1(std::move(A##Param1)), Param2(std::move(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>, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
328
405
        : Param1(std::move(A##Param1)), Param2(std::move(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>, clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
328
8
        : Param1(std::move(A##Param1)), Param2(std::move(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>, clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
328
1
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::CXXConstructExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
328
24
        : Param1(std::move(A##Param1)), Param2(std::move(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, clang::ast_matchers::internal::Matcher<clang::Expr>)
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::ObjCMethodDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
328
4
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasParameter0Matcher<clang::BlockDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl> >::matcher_hasParameter0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
328
4
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasTemplateArgument0Matcher<clang::ClassTemplateSpecializationDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasTemplateArgument0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument>)
Line
Count
Source
328
2
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasTemplateArgument0Matcher<clang::TemplateSpecializationType, unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasTemplateArgument0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument>)
Line
Count
Source
328
2
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasTemplateArgument0Matcher<clang::FunctionDecl, unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument> >::matcher_hasTemplateArgument0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument>)
Line
Count
Source
328
2
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
clang::ast_matchers::internal::matcher_hasArgument0Matcher<clang::CXXOperatorCallExpr, unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr> >::matcher_hasArgument0Matcher(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
328
687
        : Param1(std::move(A##Param1)), Param2(std::move(A##Param2)) {}        \
329
    bool matches(const NodeType &Node,                                         \
330
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
331
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
332
                     *Builder) const override;                                 \
333
                                                                               \
334
  private:                                                                     \
335
    ParamType1 const Param1;                                                   \
336
    ParamType2 const Param2;                                                   \
337
  };                                                                           \
338
  }                                                                            \
339
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<        \
340
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,      \
341
      ParamType2, ReturnTypesF>                                                \
342
18.6k
  DefineMatcher(ParamType1 Param1, ParamType2 Param2) {                        \
343
18.6k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
344
18.6k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
345
18.6k
        ParamType2, ReturnTypesF>(std::move(Param1), std::move(Param2));       \
346
18.6k
  }                                                                            \
clang::ast_matchers::hasArgument(unsigned int, clang::ast_matchers::internal::Matcher<clang::Expr>)
Line
Count
Source
342
1.53k
  DefineMatcher(ParamType1 Param1, ParamType2 Param2) {                        \
343
1.53k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
344
1.53k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
345
1.53k
        ParamType2, ReturnTypesF>(std::move(Param1), std::move(Param2));       \
346
1.53k
  }                                                                            \
clang::ast_matchers::forEachArgumentWithParam(clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
342
16.5k
  DefineMatcher(ParamType1 Param1, ParamType2 Param2) {                        \
343
16.5k
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
344
16.5k
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
345
16.5k
        ParamType2, ReturnTypesF>(std::move(Param1), std::move(Param2));       \
346
16.5k
  }                                                                            \
clang::ast_matchers::hasParameter(unsigned int, clang::ast_matchers::internal::Matcher<clang::ParmVarDecl>)
Line
Count
Source
342
542
  DefineMatcher(ParamType1 Param1, ParamType2 Param2) {                        \
343
542
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
344
542
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
345
542
        ParamType2, ReturnTypesF>(std::move(Param1), std::move(Param2));       \
346
542
  }                                                                            \
clang::ast_matchers::hasTemplateArgument(unsigned int, clang::ast_matchers::internal::Matcher<clang::TemplateArgument>)
Line
Count
Source
342
6
  DefineMatcher(ParamType1 Param1, ParamType2 Param2) {                        \
343
6
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
344
6
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
345
6
        ParamType2, ReturnTypesF>(std::move(Param1), std::move(Param2));       \
346
6
  }                                                                            \
clang::ast_matchers::forEachArgumentWithParamType(clang::ast_matchers::internal::Matcher<clang::Expr>, clang::ast_matchers::internal::Matcher<clang::QualType>)
Line
Count
Source
342
9
  DefineMatcher(ParamType1 Param1, ParamType2 Param2) {                        \
343
9
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<      \
344
9
        internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,    \
345
9
        ParamType2, ReturnTypesF>(std::move(Param1), std::move(Param2));       \
346
9
  }                                                                            \
347
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam2<       \
348
      internal::matcher_##DefineMatcher##OverloadId##Matcher, ParamType1,      \
349
      ParamType2, ReturnTypesF> (&DefineMatcher##_Type##OverloadId)(           \
350
      ParamType1 Param1, ParamType2 Param2);                                   \
351
  template <typename NodeType, typename ParamT1, typename ParamT2>             \
352
  bool internal::matcher_##DefineMatcher##OverloadId##Matcher<                 \
353
      NodeType, ParamT1, ParamT2>::                                            \
354
      matches(const NodeType &Node,                                            \
355
              ::clang::ast_matchers::internal::ASTMatchFinder *Finder,         \
356
              ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) \
357
          const
358
359
// FIXME: add a matcher for TypeLoc derived classes using its custom casting
360
// API (no longer dyn_cast) if/when we need such matching
361
362
#define AST_TYPE_TRAVERSE_MATCHER_DECL(MatcherName, FunctionName,              \
363
                                       ReturnTypesF)                           \
364
  namespace internal {                                                         \
365
  template <typename T> struct TypeMatcher##MatcherName##Getter {              \
366
2.43k
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::ObjCObjectPointerType>::value()
Line
Count
Source
366
257
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::PointerType>::value()
Line
Count
Source
366
885
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasElementTypeGetter<clang::ArrayType>::value()
Line
Count
Source
366
85
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasElementTypeGetter<clang::ComplexType>::value()
Line
Count
Source
366
29
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasValueTypeGetter<clang::AtomicType>::value()
Line
Count
Source
366
28
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::BlockPointerType>::value()
Line
Count
Source
366
1
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::MemberPointerType>::value()
Line
Count
Source
366
1
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherpointeeGetter<clang::ReferenceType>::value()
Line
Count
Source
366
1.15k
    static QualType (T::*value())() const { return &T::FunctionName; }         \
367
  };                                                                           \
368
  }                                                                            \
369
  extern const ::clang::ast_matchers::internal::                               \
370
      TypeTraversePolymorphicMatcher<                                          \
371
          QualType,                                                            \
372
          ::clang::ast_matchers::internal::TypeMatcher##MatcherName##Getter,   \
373
          ::clang::ast_matchers::internal::TypeTraverseMatcher,                \
374
          ReturnTypesF>::Func MatcherName
375
376
#define AST_TYPE_TRAVERSE_MATCHER_DEF(MatcherName, ReturnTypesF)               \
377
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
378
      QualType,                                                                \
379
      ::clang::ast_matchers::internal::TypeMatcher##MatcherName##Getter,       \
380
      ::clang::ast_matchers::internal::TypeTraverseMatcher,                    \
381
      ReturnTypesF>::Func MatcherName
382
383
/// AST_TYPE_TRAVERSE_MATCHER(MatcherName, FunctionName) defines
384
/// the matcher \c MatcherName that can be used to traverse from one \c Type
385
/// to another.
386
///
387
/// For a specific \c SpecificType, the traversal is done using
388
/// \c SpecificType::FunctionName. The existence of such a function determines
389
/// whether a corresponding matcher can be used on \c SpecificType.
390
#define AST_TYPE_TRAVERSE_MATCHER(MatcherName, FunctionName, ReturnTypesF)     \
391
  namespace internal {                                                         \
392
  template <typename T> struct TypeMatcher##MatcherName##Getter {              \
393
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
393
3
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherhasUnderlyingTypeGetter<clang::DecltypeType>::value()
Line
Count
Source
393
8
    static QualType (T::*value())() const { return &T::FunctionName; }         \
clang::ast_matchers::internal::TypeMatcherinnerTypeGetter<clang::ParenType>::value()
Line
Count
Source
393
30
    static QualType (T::*value())() const { return &T::FunctionName; }         \
394
  };                                                                           \
395
  }                                                                            \
396
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
397
      QualType,                                                                \
398
      ::clang::ast_matchers::internal::TypeMatcher##MatcherName##Getter,       \
399
      ::clang::ast_matchers::internal::TypeTraverseMatcher,                    \
400
      ReturnTypesF>::Func MatcherName
401
402
#define AST_TYPELOC_TRAVERSE_MATCHER_DECL(MatcherName, FunctionName,           \
403
                                          ReturnTypesF)                        \
404
  namespace internal {                                                         \
405
  template <typename T> struct TypeLocMatcher##MatcherName##Getter {           \
406
    static TypeLoc (T::*value())() const { return &T::FunctionName##Loc; }     \
407
  };                                                                           \
408
  }                                                                            \
409
  extern const ::clang::ast_matchers::internal::                               \
410
      TypeTraversePolymorphicMatcher<                                          \
411
          TypeLoc,                                                             \
412
          ::clang::ast_matchers::internal::                                    \
413
              TypeLocMatcher##MatcherName##Getter,                             \
414
          ::clang::ast_matchers::internal::TypeLocTraverseMatcher,             \
415
          ReturnTypesF>::Func MatcherName##Loc;                                \
416
  AST_TYPE_TRAVERSE_MATCHER_DECL(MatcherName, FunctionName##Type, ReturnTypesF)
417
418
#define AST_TYPELOC_TRAVERSE_MATCHER_DEF(MatcherName, ReturnTypesF)            \
419
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
420
      TypeLoc,                                                                 \
421
      ::clang::ast_matchers::internal::TypeLocMatcher##MatcherName##Getter,    \
422
      ::clang::ast_matchers::internal::TypeLocTraverseMatcher,                 \
423
      ReturnTypesF>::Func MatcherName##Loc;                                    \
424
  AST_TYPE_TRAVERSE_MATCHER_DEF(MatcherName, ReturnTypesF)
425
426
/// AST_TYPELOC_TRAVERSE_MATCHER(MatcherName, FunctionName) works
427
/// identical to \c AST_TYPE_TRAVERSE_MATCHER but operates on \c TypeLocs.
428
#define AST_TYPELOC_TRAVERSE_MATCHER(MatcherName, FunctionName, ReturnTypesF)  \
429
  namespace internal {                                                         \
430
  template <typename T> struct TypeLocMatcher##MatcherName##Getter {           \
431
    static TypeLoc (T::*value())() const { return &T::FunctionName##Loc; }     \
432
  };                                                                           \
433
  }                                                                            \
434
  const ::clang::ast_matchers::internal::TypeTraversePolymorphicMatcher<       \
435
      TypeLoc,                                                                 \
436
      ::clang::ast_matchers::internal::TypeLocMatcher##MatcherName##Getter,    \
437
      ::clang::ast_matchers::internal::TypeLocTraverseMatcher,                 \
438
      ReturnTypesF>::Func MatcherName##Loc;                                    \
439
  AST_TYPE_TRAVERSE_MATCHER(MatcherName, FunctionName##Type, ReturnTypesF)
440
441
/// AST_MATCHER_REGEX(Type, DefineMatcher, Param) { ... }
442
/// defines a function named DefineMatcher() that takes a regular expression
443
/// string paramater and an optional RegexFlags parameter and returns a
444
/// Matcher<Type> object.
445
///
446
/// The code between the curly braces has access to the following variables:
447
///
448
///   Node:                  the AST node being matched; its type is Type.
449
///   Param:                 a pointer to an \ref llvm::Regex object
450
///   Finder:                an ASTMatchFinder*.
451
///   Builder:               a BoundNodesTreeBuilder*.
452
///
453
/// The code should return true if 'Node' matches.
454
#define AST_MATCHER_REGEX(Type, DefineMatcher, Param)                          \
455
  AST_MATCHER_REGEX_OVERLOAD(Type, DefineMatcher, Param, 0)
456
457
#define AST_MATCHER_REGEX_OVERLOAD(Type, DefineMatcher, Param, OverloadId)     \
458
  namespace internal {                                                         \
459
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
460
      : public ::clang::ast_matchers::internal::MatcherInterface<Type> {       \
461
  public:                                                                      \
462
    explicit matcher_##DefineMatcher##OverloadId##Matcher(                     \
463
        std::shared_ptr<llvm::Regex> RE)                                       \
464
357
        : Param(std::move(RE)) {}                                              \
clang::ast_matchers::internal::matcher_matchesName0Matcher::matcher_matchesName0Matcher(std::__1::shared_ptr<llvm::Regex>)
Line
Count
Source
464
354
        : Param(std::move(RE)) {}                                              \
clang::ast_matchers::internal::matcher_matchesSelector0Matcher::matcher_matchesSelector0Matcher(std::__1::shared_ptr<llvm::Regex>)
Line
Count
Source
464
3
        : Param(std::move(RE)) {}                                              \
465
    bool matches(const Type &Node,                                             \
466
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
467
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
468
                     *Builder) const override;                                 \
469
                                                                               \
470
  private:                                                                     \
471
    std::shared_ptr<llvm::Regex> const Param;                                  \
472
  };                                                                           \
473
  }                                                                            \
474
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher(         \
475
357
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {             \
476
357
    return ::clang::ast_matchers::internal::makeMatcher(                       \
477
357
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
478
357
            ::clang::ast_matchers::internal::createAndVerifyRegex(             \
479
357
                Param, RegexFlags, #DefineMatcher)));                          \
480
357
  }                                                                            \
clang::ast_matchers::matchesName(llvm::StringRef, llvm::Regex::RegexFlags)
Line
Count
Source
475
354
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {             \
476
354
    return ::clang::ast_matchers::internal::makeMatcher(                       \
477
354
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
478
354
            ::clang::ast_matchers::internal::createAndVerifyRegex(             \
479
354
                Param, RegexFlags, #DefineMatcher)));                          \
480
354
  }                                                                            \
clang::ast_matchers::matchesSelector(llvm::StringRef, llvm::Regex::RegexFlags)
Line
Count
Source
475
3
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {             \
476
3
    return ::clang::ast_matchers::internal::makeMatcher(                       \
477
3
        new internal::matcher_##DefineMatcher##OverloadId##Matcher(            \
478
3
            ::clang::ast_matchers::internal::createAndVerifyRegex(             \
479
3
                Param, RegexFlags, #DefineMatcher)));                          \
480
3
  }                                                                            \
481
  inline ::clang::ast_matchers::internal::Matcher<Type> DefineMatcher(         \
482
346
      llvm::StringRef Param) {                                                 \
483
346
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
484
346
  }                                                                            \
clang::ast_matchers::matchesName(llvm::StringRef)
Line
Count
Source
482
343
      llvm::StringRef Param) {                                                 \
483
343
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
484
343
  }                                                                            \
clang::ast_matchers::matchesSelector(llvm::StringRef)
Line
Count
Source
482
3
      llvm::StringRef Param) {                                                 \
483
3
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
484
3
  }                                                                            \
485
                                                                               \
486
  typedef ::clang::ast_matchers::internal::Matcher<Type> (                     \
487
      &DefineMatcher##_Type##OverloadId##Flags)(llvm::StringRef,               \
488
                                                llvm::Regex::RegexFlags);      \
489
  typedef ::clang::ast_matchers::internal::Matcher<Type> (                     \
490
      &DefineMatcher##_Type##OverloadId)(llvm::StringRef);                     \
491
  inline bool internal::matcher_##DefineMatcher##OverloadId##Matcher::matches( \
492
      const Type &Node,                                                        \
493
      ::clang::ast_matchers::internal::ASTMatchFinder *Finder,                 \
494
      ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder) const
495
496
/// AST_POLYMORPHIC_MATCHER_REGEX(DefineMatcher, ReturnTypesF, Param) { ... }
497
/// defines a function named DefineMatcher() that takes a regular expression
498
/// string paramater and an optional RegexFlags parameter that is polymorphic in
499
/// the return type.
500
///
501
/// The variables are the same as for
502
/// AST_MATCHER_REGEX, with the addition of NodeType, which specifies the node
503
/// type of the matcher Matcher<NodeType> returned by the function matcher().
504
#define AST_POLYMORPHIC_MATCHER_REGEX(DefineMatcher, ReturnTypesF, Param)      \
505
  AST_POLYMORPHIC_MATCHER_REGEX_OVERLOAD(DefineMatcher, ReturnTypesF, Param, 0)
506
507
#define AST_POLYMORPHIC_MATCHER_REGEX_OVERLOAD(DefineMatcher, ReturnTypesF,    \
508
                                               Param, OverloadId)              \
509
  namespace internal {                                                         \
510
  template <typename NodeType, typename ParamT>                                \
511
  class matcher_##DefineMatcher##OverloadId##Matcher                           \
512
      : public ::clang::ast_matchers::internal::MatcherInterface<NodeType> {   \
513
  public:                                                                      \
514
    explicit matcher_##DefineMatcher##OverloadId##Matcher(                     \
515
        std::shared_ptr<llvm::Regex> RE)                                       \
516
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>)
517
    bool matches(const NodeType &Node,                                         \
518
                 ::clang::ast_matchers::internal::ASTMatchFinder *Finder,      \
519
                 ::clang::ast_matchers::internal::BoundNodesTreeBuilder        \
520
                     *Builder) const override;                                 \
521
                                                                               \
522
  private:                                                                     \
523
    std::shared_ptr<llvm::Regex> const Param;                                  \
524
  };                                                                           \
525
  }                                                                            \
526
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<        \
527
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
528
      std::shared_ptr<llvm::Regex>, ReturnTypesF>                              \
529
2
  DefineMatcher(llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags) {   \
530
2
    return ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<      \
531
2
        internal::matcher_##DefineMatcher##OverloadId##Matcher,                \
532
2
        std::shared_ptr<llvm::Regex>, ReturnTypesF>(                           \
533
2
        ::clang::ast_matchers::internal::createAndVerifyRegex(                 \
534
2
            Param, RegexFlags, #DefineMatcher));                               \
535
2
  }                                                                            \
536
  inline ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<        \
537
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
538
      std::shared_ptr<llvm::Regex>, ReturnTypesF>                              \
539
2
  DefineMatcher(llvm::StringRef Param) {                                       \
540
2
    return DefineMatcher(Param, llvm::Regex::NoFlags);                         \
541
2
  }                                                                            \
542
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<       \
543
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
544
      std::shared_ptr<llvm::Regex>, ReturnTypesF> (                            \
545
      &DefineMatcher##_Type##OverloadId##Flags)(                               \
546
      llvm::StringRef Param, llvm::Regex::RegexFlags RegexFlags);              \
547
  typedef ::clang::ast_matchers::internal::PolymorphicMatcherWithParam1<       \
548
      internal::matcher_##DefineMatcher##OverloadId##Matcher,                  \
549
      std::shared_ptr<llvm::Regex>, ReturnTypesF> (                            \
550
      &DefineMatcher##_Type##OverloadId)(llvm::StringRef Param);               \
551
  template <typename NodeType, typename ParamT>                                \
552
  bool internal::                                                              \
553
      matcher_##DefineMatcher##OverloadId##Matcher<NodeType, ParamT>::matches( \
554
          const NodeType &Node,                                                \
555
          ::clang::ast_matchers::internal::ASTMatchFinder *Finder,             \
556
          ::clang::ast_matchers::internal::BoundNodesTreeBuilder *Builder)     \
557
          const
558
559
#endif // LLVM_CLANG_ASTMATCHERS_ASTMATCHERSMACROS_H