Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/include/clang/AST/TypeVisitor.h
Line
Count
Source (jump to first uncovered line)
1
//===--- TypeVisitor.h - Visitor for Type subclasses ------------*- 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
//  This file defines the TypeVisitor interface.
10
//
11
//===----------------------------------------------------------------------===//
12
13
#ifndef LLVM_CLANG_AST_TYPEVISITOR_H
14
#define LLVM_CLANG_AST_TYPEVISITOR_H
15
16
#include "clang/AST/Type.h"
17
18
namespace clang {
19
20
#define DISPATCH(CLASS) \
21
183M
  return static_cast<ImplClass*>(this)-> \
22
183M
           Visit##CLASS(static_cast<const CLASS*>(T))
23
24
/// An operation on a type.
25
///
26
/// \tparam ImplClass Class implementing the operation. Must be inherited from
27
///         TypeVisitor.
28
/// \tparam RetTy %Type of result produced by the operation.
29
///
30
/// The class implements polymorphic operation on an object of type derived
31
/// from Type. The operation is performed by calling method Visit. It then
32
/// dispatches the call to function \c VisitFooType, if actual argument type
33
/// is \c FooType.
34
///
35
/// The class implements static polymorphism using Curiously Recurring
36
/// Template Pattern. It is designed to be a base class for some concrete
37
/// class:
38
///
39
/// \code
40
///     class SomeVisitor : public TypeVisitor<SomeVisitor,sometype> { ... };
41
///     ...
42
///     Type *atype = ...
43
///     ...
44
///     SomeVisitor avisitor;
45
///     sometype result = avisitor.Visit(atype);
46
/// \endcode
47
///
48
/// Actual treatment is made by methods of the derived class, TypeVisitor only
49
/// dispatches call to the appropriate method. If the implementation class
50
/// \c ImplClass provides specific action for some type, say
51
/// \c ConstantArrayType, it should define method
52
/// <tt>VisitConstantArrayType(const ConstantArrayType*)</tt>. Otherwise
53
/// \c TypeVisitor dispatches call to the method that handles parent type. In
54
/// this example handlers are tried in the sequence:
55
///
56
/// \li <tt>ImplClass::VisitConstantArrayType(const ConstantArrayType*)</tt>
57
/// \li <tt>ImplClass::VisitArrayType(const ArrayType*)</tt>
58
/// \li <tt>ImplClass::VisitType(const Type*)</tt>
59
/// \li <tt>TypeVisitor::VisitType(const Type*)</tt>
60
///
61
/// The first function of this sequence that is defined will handle object of
62
/// type \c ConstantArrayType.
63
template<typename ImplClass, typename RetTy=void>
64
class TypeVisitor {
65
public:
66
67
  /// Performs the operation associated with this visitor object.
68
66.8M
  RetTy Visit(const Type *T) {
69
66.8M
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
66.8M
    switch (T->getTypeClass()) {
71
66.8M
#define ABSTRACT_TYPE(CLASS, PARENT)
72
133M
#define TYPE(CLASS, PARENT) 
case Type::CLASS: 66.8M
DISPATCH(CLASS##Type);
73
66.8M
#include 
"clang/AST/TypeNodes.def"18.4M
74
66.8M
    }
75
66.8M
    
llvm_unreachable0
("Unknown type class!");
76
66.8M
  }
SemaTemplate.cpp:clang::TypeVisitor<(anonymous namespace)::UnnamedLocalNoLinkageFinder, bool>::Visit(clang::Type const*)
Line
Count
Source
68
14.2M
  RetTy Visit(const Type *T) {
69
14.2M
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
14.2M
    switch (T->getTypeClass()) {
71
14.2M
#define ABSTRACT_TYPE(CLASS, PARENT)
72
14.2M
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
14.2M
#include 
"clang/AST/TypeNodes.def"2.79M
74
14.2M
    }
75
14.2M
    
llvm_unreachable0
("Unknown type class!");
76
  }
clang::TypeVisitor<clang::ASTDumper, void>::Visit(clang::Type const*)
Line
Count
Source
68
1.48k
  RetTy Visit(const Type *T) {
69
1.48k
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
1.48k
    switch (T->getTypeClass()) {
71
1.48k
#define ABSTRACT_TYPE(CLASS, PARENT)
72
1.48k
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
1.48k
#include 
"clang/AST/TypeNodes.def"635
74
1.48k
    }
75
1.48k
    
llvm_unreachable0
("Unknown type class!");
76
  }
clang::TypeVisitor<clang::JSONDumper, void>::Visit(clang::Type const*)
Line
Count
Source
68
142
  RetTy Visit(const Type *T) {
69
142
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
142
    switch (T->getTypeClass()) {
71
142
#define ABSTRACT_TYPE(CLASS, PARENT)
72
142
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
142
#include 
"clang/AST/TypeNodes.def"65
74
142
    }
75
142
    
llvm_unreachable0
("Unknown type class!");
76
  }
clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::Visit(clang::Type const*)
Line
Count
Source
68
7.19k
  RetTy Visit(const Type *T) {
69
7.19k
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
7.19k
    switch (T->getTypeClass()) {
71
7.19k
#define ABSTRACT_TYPE(CLASS, PARENT)
72
7.19k
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
7.19k
#include 
"clang/AST/TypeNodes.def"2.36k
74
7.19k
    }
75
7.19k
    
llvm_unreachable0
("Unknown type class!");
76
  }
clang::TypeVisitor<clang::JSONNodeDumper, void>::Visit(clang::Type const*)
Line
Count
Source
68
142
  RetTy Visit(const Type *T) {
69
142
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
142
    switch (T->getTypeClass()) {
71
142
#define ABSTRACT_TYPE(CLASS, PARENT)
72
142
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
142
#include 
"clang/AST/TypeNodes.def"65
74
142
    }
75
142
    
llvm_unreachable0
("Unknown type class!");
76
  }
ODRHash.cpp:clang::TypeVisitor<(anonymous namespace)::ODRTypeVisitor, void>::Visit(clang::Type const*)
Line
Count
Source
68
1.01M
  RetTy Visit(const Type *T) {
69
1.01M
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
1.01M
    switch (T->getTypeClass()) {
71
1.01M
#define ABSTRACT_TYPE(CLASS, PARENT)
72
1.01M
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
1.01M
#include 
"clang/AST/TypeNodes.def"374k
74
1.01M
    }
75
1.01M
    
llvm_unreachable0
("Unknown type class!");
76
  }
clang::TypeVisitor<clang::TextNodeDumper, void>::Visit(clang::Type const*)
Line
Count
Source
68
1.48k
  RetTy Visit(const Type *T) {
69
1.48k
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
1.48k
    switch (T->getTypeClass()) {
71
1.48k
#define ABSTRACT_TYPE(CLASS, PARENT)
72
1.48k
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
1.48k
#include 
"clang/AST/TypeNodes.def"635
74
1.48k
    }
75
1.48k
    
llvm_unreachable0
("Unknown type class!");
76
  }
Type.cpp:clang::TypeVisitor<(anonymous namespace)::SubstObjCTypeArgsVisitor, clang::QualType>::Visit(clang::Type const*)
Line
Count
Source
68
1.50k
  RetTy Visit(const Type *T) {
69
1.50k
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
1.50k
    switch (T->getTypeClass()) {
71
1.50k
#define ABSTRACT_TYPE(CLASS, PARENT)
72
1.50k
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
1.50k
#include 
"clang/AST/TypeNodes.def"332
74
1.50k
    }
75
1.50k
    
llvm_unreachable0
("Unknown type class!");
76
  }
Type.cpp:clang::TypeVisitor<(anonymous namespace)::StripObjCKindOfTypeVisitor, clang::QualType>::Visit(clang::Type const*)
Line
Count
Source
68
498
  RetTy Visit(const Type *T) {
69
498
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
498
    switch (T->getTypeClass()) {
71
498
#define ABSTRACT_TYPE(CLASS, PARENT)
72
498
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
498
#include 
"clang/AST/TypeNodes.def"64
74
498
    }
75
498
    
llvm_unreachable0
("Unknown type class!");
76
  }
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::Visit(clang::Type const*)
Line
Count
Source
68
51.5M
  RetTy Visit(const Type *T) {
69
51.5M
    // Top switch stmt: dispatch to VisitFooType for each FooType.
70
51.5M
    switch (T->getTypeClass()) {
71
51.5M
#define ABSTRACT_TYPE(CLASS, PARENT)
72
51.5M
#define TYPE(CLASS, PARENT) case Type::CLASS: DISPATCH(CLASS##Type);
73
51.5M
#include 
"clang/AST/TypeNodes.def"15.2M
74
51.5M
    }
75
51.5M
    
llvm_unreachable0
("Unknown type class!");
76
  }
77
78
  // If the implementation chooses not to implement a certain visit method, fall
79
  // back on superclass.
80
49.3M
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
49.3M
  DISPATCH(PARENT);                                                          \
82
49.3M
}
clang::TypeVisitor<clang::ASTDumper, void>::VisitBuiltinType(clang::BuiltinType const*)
Line
Count
Source
80
635
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
635
  DISPATCH(PARENT);                                                          \
82
635
}
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitLValueReferenceType(clang::LValueReferenceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitRValueReferenceType(clang::RValueReferenceType const*)
clang::TypeVisitor<clang::ASTDumper, void>::VisitConstantArrayType(clang::ConstantArrayType const*)
Line
Count
Source
80
146
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
146
  DISPATCH(PARENT);                                                          \
82
146
}
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitIncompleteArrayType(clang::IncompleteArrayType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitDependentAddressSpaceType(clang::DependentAddressSpaceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitDependentVectorType(clang::DependentVectorType const*)
clang::TypeVisitor<clang::ASTDumper, void>::VisitExtVectorType(clang::ExtVectorType const*)
Line
Count
Source
80
5
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
5
  DISPATCH(PARENT);                                                          \
82
5
}
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitFunctionNoProtoType(clang::FunctionNoProtoType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitUnresolvedUsingType(clang::UnresolvedUsingType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitParenType(clang::ParenType const*)
clang::TypeVisitor<clang::ASTDumper, void>::VisitTypedefType(clang::TypedefType const*)
Line
Count
Source
80
4
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
4
  DISPATCH(PARENT);                                                          \
82
4
}
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitMacroQualifiedType(clang::MacroQualifiedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitDecayedType(clang::DecayedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitTypeOfType(clang::TypeOfType const*)
clang::TypeVisitor<clang::ASTDumper, void>::VisitRecordType(clang::RecordType const*)
Line
Count
Source
80
335
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
335
  DISPATCH(PARENT);                                                          \
82
335
}
clang::TypeVisitor<clang::ASTDumper, void>::VisitTagType(clang::TagType const*)
Line
Count
Source
80
337
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
337
  DISPATCH(PARENT);                                                          \
82
337
}
clang::TypeVisitor<clang::ASTDumper, void>::VisitEnumType(clang::EnumType const*)
Line
Count
Source
80
2
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
2
  DISPATCH(PARENT);                                                          \
82
2
}
clang::TypeVisitor<clang::ASTDumper, void>::VisitElaboratedType(clang::ElaboratedType const*)
Line
Count
Source
80
7
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
7
  DISPATCH(PARENT);                                                          \
82
7
}
clang::TypeVisitor<clang::ASTDumper, void>::VisitTemplateTypeParmType(clang::TemplateTypeParmType const*)
Line
Count
Source
80
8
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
8
  DISPATCH(PARENT);                                                          \
82
8
}
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitAutoType(clang::AutoType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitDeducedType(clang::DeducedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitInjectedClassNameType(clang::InjectedClassNameType const*)
clang::TypeVisitor<clang::ASTDumper, void>::VisitDependentNameType(clang::DependentNameType const*)
Line
Count
Source
80
5
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
5
  DISPATCH(PARENT);                                                          \
82
5
}
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitDependentTemplateSpecializationType(clang::DependentTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitObjCTypeParamType(clang::ObjCTypeParamType const*)
clang::TypeVisitor<clang::ASTDumper, void>::VisitObjCObjectType(clang::ObjCObjectType const*)
Line
Count
Source
80
40
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
40
  DISPATCH(PARENT);                                                          \
82
40
}
Unexecuted instantiation: clang::TypeVisitor<clang::ASTDumper, void>::VisitObjCInterfaceType(clang::ObjCInterfaceType const*)
clang::TypeVisitor<clang::JSONDumper, void>::VisitBuiltinType(clang::BuiltinType const*)
Line
Count
Source
80
65
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
65
  DISPATCH(PARENT);                                                          \
82
65
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitLValueReferenceType(clang::LValueReferenceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitRValueReferenceType(clang::RValueReferenceType const*)
clang::TypeVisitor<clang::JSONDumper, void>::VisitConstantArrayType(clang::ConstantArrayType const*)
Line
Count
Source
80
14
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
14
  DISPATCH(PARENT);                                                          \
82
14
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitIncompleteArrayType(clang::IncompleteArrayType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitDependentAddressSpaceType(clang::DependentAddressSpaceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitDependentVectorType(clang::DependentVectorType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitExtVectorType(clang::ExtVectorType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitFunctionNoProtoType(clang::FunctionNoProtoType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitUnresolvedUsingType(clang::UnresolvedUsingType const*)
clang::TypeVisitor<clang::JSONDumper, void>::VisitParenType(clang::ParenType const*)
Line
Count
Source
80
3
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
3
  DISPATCH(PARENT);                                                          \
82
3
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitTypedefType(clang::TypedefType const*)
clang::TypeVisitor<clang::JSONDumper, void>::VisitMacroQualifiedType(clang::MacroQualifiedType const*)
Line
Count
Source
80
1
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
1
  DISPATCH(PARENT);                                                          \
82
1
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitDecayedType(clang::DecayedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitTypeOfType(clang::TypeOfType const*)
clang::TypeVisitor<clang::JSONDumper, void>::VisitRecordType(clang::RecordType const*)
Line
Count
Source
80
32
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
32
  DISPATCH(PARENT);                                                          \
82
32
}
clang::TypeVisitor<clang::JSONDumper, void>::VisitTagType(clang::TagType const*)
Line
Count
Source
80
32
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
32
  DISPATCH(PARENT);                                                          \
82
32
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitEnumType(clang::EnumType const*)
clang::TypeVisitor<clang::JSONDumper, void>::VisitElaboratedType(clang::ElaboratedType const*)
Line
Count
Source
80
2
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
2
  DISPATCH(PARENT);                                                          \
82
2
}
clang::TypeVisitor<clang::JSONDumper, void>::VisitTemplateTypeParmType(clang::TemplateTypeParmType const*)
Line
Count
Source
80
2
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
2
  DISPATCH(PARENT);                                                          \
82
2
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitAutoType(clang::AutoType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitDeducedType(clang::DeducedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitInjectedClassNameType(clang::InjectedClassNameType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitDependentNameType(clang::DependentNameType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitDependentTemplateSpecializationType(clang::DependentTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitObjCTypeParamType(clang::ObjCTypeParamType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitObjCObjectType(clang::ObjCObjectType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONDumper, void>::VisitObjCInterfaceType(clang::ObjCInterfaceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitDependentSizedExtVectorType(clang::DependentSizedExtVectorType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitDependentAddressSpaceType(clang::DependentAddressSpaceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitDependentVectorType(clang::DependentVectorType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitMacroQualifiedType(clang::MacroQualifiedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitAdjustedType(clang::AdjustedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitSubstTemplateTypeParmPackType(clang::SubstTemplateTypeParmPackType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitDeducedType(clang::DeducedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitObjCTypeParamType(clang::ObjCTypeParamType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::ASTNodeImporter, llvm::Expected<clang::QualType> >::VisitPipeType(clang::PipeType const*)
clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitBuiltinType(clang::BuiltinType const*)
Line
Count
Source
80
65
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
65
  DISPATCH(PARENT);                                                          \
82
65
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitComplexType(clang::ComplexType const*)
clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitPointerType(clang::PointerType const*)
Line
Count
Source
80
16
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
16
  DISPATCH(PARENT);                                                          \
82
16
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitBlockPointerType(clang::BlockPointerType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitLValueReferenceType(clang::LValueReferenceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitReferenceType(clang::ReferenceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitIncompleteArrayType(clang::IncompleteArrayType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitVariableArrayType(clang::VariableArrayType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDependentSizedArrayType(clang::DependentSizedArrayType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDependentAddressSpaceType(clang::DependentAddressSpaceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDependentVectorType(clang::DependentVectorType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitExtVectorType(clang::ExtVectorType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitFunctionNoProtoType(clang::FunctionNoProtoType const*)
clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitParenType(clang::ParenType const*)
Line
Count
Source
80
3
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
3
  DISPATCH(PARENT);                                                          \
82
3
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitAdjustedType(clang::AdjustedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDecayedType(clang::DecayedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitTypeOfExprType(clang::TypeOfExprType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitTypeOfType(clang::TypeOfType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDecltypeType(clang::DecltypeType const*)
clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitRecordType(clang::RecordType const*)
Line
Count
Source
80
32
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
32
  DISPATCH(PARENT);                                                          \
82
32
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitEnumType(clang::EnumType const*)
clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitAttributedType(clang::AttributedType const*)
Line
Count
Source
80
1
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
1
  DISPATCH(PARENT);                                                          \
82
1
}
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitSubstTemplateTypeParmType(clang::SubstTemplateTypeParmType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitSubstTemplateTypeParmPackType(clang::SubstTemplateTypeParmPackType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDeducedType(clang::DeducedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDependentNameType(clang::DependentNameType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitDependentTemplateSpecializationType(clang::DependentTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitObjCTypeParamType(clang::ObjCTypeParamType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitObjCObjectType(clang::ObjCObjectType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitObjCObjectPointerType(clang::ObjCObjectPointerType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitPipeType(clang::PipeType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitAtomicType(clang::AtomicType const*)
Unexecuted instantiation: ODRHash.cpp:clang::TypeVisitor<(anonymous namespace)::ODRTypeVisitor, void>::VisitDependentVectorType(clang::DependentVectorType const*)
ODRHash.cpp:clang::TypeVisitor<(anonymous namespace)::ODRTypeVisitor, void>::VisitMacroQualifiedType(clang::MacroQualifiedType const*)
Line
Count
Source
80
1
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
1
  DISPATCH(PARENT);                                                          \
82
1
}
ODRHash.cpp:clang::TypeVisitor<(anonymous namespace)::ODRTypeVisitor, void>::VisitAtomicType(clang::AtomicType const*)
Line
Count
Source
80
520
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
520
  DISPATCH(PARENT);                                                          \
82
520
}
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitBuiltinType(clang::BuiltinType const*)
Line
Count
Source
80
635
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
635
  DISPATCH(PARENT);                                                          \
82
635
}
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitComplexType(clang::ComplexType const*)
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitPointerType(clang::PointerType const*)
Line
Count
Source
80
191
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
191
  DISPATCH(PARENT);                                                          \
82
191
}
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitBlockPointerType(clang::BlockPointerType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitLValueReferenceType(clang::LValueReferenceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitReferenceType(clang::ReferenceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitMemberPointerType(clang::MemberPointerType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitIncompleteArrayType(clang::IncompleteArrayType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDependentAddressSpaceType(clang::DependentAddressSpaceType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDependentVectorType(clang::DependentVectorType const*)
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitExtVectorType(clang::ExtVectorType const*)
Line
Count
Source
80
5
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
5
  DISPATCH(PARENT);                                                          \
82
5
}
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitFunctionNoProtoType(clang::FunctionNoProtoType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitParenType(clang::ParenType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitMacroQualifiedType(clang::MacroQualifiedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitAdjustedType(clang::AdjustedType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDecayedType(clang::DecayedType const*)
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitTypeOfExprType(clang::TypeOfExprType const*)
Line
Count
Source
80
18
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
18
  DISPATCH(PARENT);                                                          \
82
18
}
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitTypeOfType(clang::TypeOfType const*)
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDecltypeType(clang::DecltypeType const*)
Line
Count
Source
80
3
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
3
  DISPATCH(PARENT);                                                          \
82
3
}
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitRecordType(clang::RecordType const*)
Line
Count
Source
80
335
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
335
  DISPATCH(PARENT);                                                          \
82
335
}
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitEnumType(clang::EnumType const*)
Line
Count
Source
80
2
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
2
  DISPATCH(PARENT);                                                          \
82
2
}
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitElaboratedType(clang::ElaboratedType const*)
Line
Count
Source
80
7
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
7
  DISPATCH(PARENT);                                                          \
82
7
}
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitAttributedType(clang::AttributedType const*)
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitSubstTemplateTypeParmType(clang::SubstTemplateTypeParmType const*)
Line
Count
Source
80
4
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
4
  DISPATCH(PARENT);                                                          \
82
4
}
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitSubstTemplateTypeParmPackType(clang::SubstTemplateTypeParmPackType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDeducedType(clang::DeducedType const*)
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDependentNameType(clang::DependentNameType const*)
Line
Count
Source
80
5
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
5
  DISPATCH(PARENT);                                                          \
82
5
}
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitDependentTemplateSpecializationType(clang::DependentTemplateSpecializationType const*)
Unexecuted instantiation: clang::TypeVisitor<clang::TextNodeDumper, void>::VisitObjCTypeParamType(clang::ObjCTypeParamType const*)
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitObjCObjectType(clang::ObjCObjectType const*)
Line
Count
Source
80
40
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
40
  DISPATCH(PARENT);                                                          \
82
40
}
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitObjCObjectPointerType(clang::ObjCObjectPointerType const*)
Line
Count
Source
80
40
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
40
  DISPATCH(PARENT);                                                          \
82
40
}
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitPipeType(clang::PipeType const*)
Line
Count
Source
80
3
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
3
  DISPATCH(PARENT);                                                          \
82
3
}
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitAtomicType(clang::AtomicType const*)
Line
Count
Source
80
16
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
16
  DISPATCH(PARENT);                                                          \
82
16
}
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::SubstObjCTypeArgsVisitor, clang::QualType>::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::SubstObjCTypeArgsVisitor, clang::QualType>::VisitDeducedType(clang::DeducedType const*)
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::SubstObjCTypeArgsVisitor, clang::QualType>::VisitPipeType(clang::PipeType const*)
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::StripObjCKindOfTypeVisitor, clang::QualType>::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::StripObjCKindOfTypeVisitor, clang::QualType>::VisitDeducedType(clang::DeducedType const*)
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::StripObjCKindOfTypeVisitor, clang::QualType>::VisitPipeType(clang::PipeType const*)
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitBuiltinType(clang::BuiltinType const*)
Line
Count
Source
80
15.2M
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
15.2M
  DISPATCH(PARENT);                                                          \
82
15.2M
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitComplexType(clang::ComplexType const*)
Line
Count
Source
80
13.2k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
13.2k
  DISPATCH(PARENT);                                                          \
82
13.2k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitLValueReferenceType(clang::LValueReferenceType const*)
Line
Count
Source
80
362k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
362k
  DISPATCH(PARENT);                                                          \
82
362k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitRValueReferenceType(clang::RValueReferenceType const*)
Line
Count
Source
80
30.4k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
30.4k
  DISPATCH(PARENT);                                                          \
82
30.4k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitConstantArrayType(clang::ConstantArrayType const*)
Line
Count
Source
80
161k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
161k
  DISPATCH(PARENT);                                                          \
82
161k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitIncompleteArrayType(clang::IncompleteArrayType const*)
Line
Count
Source
80
66.1k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
66.1k
  DISPATCH(PARENT);                                                          \
82
66.1k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitVariableArrayType(clang::VariableArrayType const*)
Line
Count
Source
80
15.4k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
15.4k
  DISPATCH(PARENT);                                                          \
82
15.4k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDependentSizedArrayType(clang::DependentSizedArrayType const*)
Line
Count
Source
80
6.21k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
6.21k
  DISPATCH(PARENT);                                                          \
82
6.21k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDependentAddressSpaceType(clang::DependentAddressSpaceType const*)
Line
Count
Source
80
86
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
86
  DISPATCH(PARENT);                                                          \
82
86
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDependentVectorType(clang::DependentVectorType const*)
Line
Count
Source
80
12
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
12
  DISPATCH(PARENT);                                                          \
82
12
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitExtVectorType(clang::ExtVectorType const*)
Line
Count
Source
80
1.34k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
1.34k
  DISPATCH(PARENT);                                                          \
82
1.34k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitFunctionNoProtoType(clang::FunctionNoProtoType const*)
Line
Count
Source
80
1.45k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
1.45k
  DISPATCH(PARENT);                                                          \
82
1.45k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitUnresolvedUsingType(clang::UnresolvedUsingType const*)
Line
Count
Source
80
57
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
57
  DISPATCH(PARENT);                                                          \
82
57
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitTypedefType(clang::TypedefType const*)
Line
Count
Source
80
20.9M
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
20.9M
  DISPATCH(PARENT);                                                          \
82
20.9M
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDecayedType(clang::DecayedType const*)
Line
Count
Source
80
266
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
266
  DISPATCH(PARENT);                                                          \
82
266
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitTypeOfExprType(clang::TypeOfExprType const*)
Line
Count
Source
80
3.66k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
3.66k
  DISPATCH(PARENT);                                                          \
82
3.66k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitTypeOfType(clang::TypeOfType const*)
Line
Count
Source
80
121
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
121
  DISPATCH(PARENT);                                                          \
82
121
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDecltypeType(clang::DecltypeType const*)
Line
Count
Source
80
75.6k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
75.6k
  DISPATCH(PARENT);                                                          \
82
75.6k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitUnaryTransformType(clang::UnaryTransformType const*)
Line
Count
Source
80
821
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
821
  DISPATCH(PARENT);                                                          \
82
821
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitRecordType(clang::RecordType const*)
Line
Count
Source
80
2.10M
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
2.10M
  DISPATCH(PARENT);                                                          \
82
2.10M
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitTagType(clang::TagType const*)
Line
Count
Source
80
2.34M
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
2.34M
  DISPATCH(PARENT);                                                          \
82
2.34M
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitEnumType(clang::EnumType const*)
Line
Count
Source
80
243k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
243k
  DISPATCH(PARENT);                                                          \
82
243k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitTemplateTypeParmType(clang::TemplateTypeParmType const*)
Line
Count
Source
80
4.59M
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
4.59M
  DISPATCH(PARENT);                                                          \
82
4.59M
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitSubstTemplateTypeParmType(clang::SubstTemplateTypeParmType const*)
Line
Count
Source
80
332k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
332k
  DISPATCH(PARENT);                                                          \
82
332k
}
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitSubstTemplateTypeParmPackType(clang::SubstTemplateTypeParmPackType const*)
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitTemplateSpecializationType(clang::TemplateSpecializationType const*)
Line
Count
Source
80
1.30M
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
1.30M
  DISPATCH(PARENT);                                                          \
82
1.30M
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitAutoType(clang::AutoType const*)
Line
Count
Source
80
159k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
159k
  DISPATCH(PARENT);                                                          \
82
159k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDeducedTemplateSpecializationType(clang::DeducedTemplateSpecializationType const*)
Line
Count
Source
80
1.73k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
1.73k
  DISPATCH(PARENT);                                                          \
82
1.73k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitInjectedClassNameType(clang::InjectedClassNameType const*)
Line
Count
Source
80
368k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
368k
  DISPATCH(PARENT);                                                          \
82
368k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDependentNameType(clang::DependentNameType const*)
Line
Count
Source
80
788k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
788k
  DISPATCH(PARENT);                                                          \
82
788k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitDependentTemplateSpecializationType(clang::DependentTemplateSpecializationType const*)
Line
Count
Source
80
9.98k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
9.98k
  DISPATCH(PARENT);                                                          \
82
9.98k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitObjCTypeParamType(clang::ObjCTypeParamType const*)
Line
Count
Source
80
5.83k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
5.83k
  DISPATCH(PARENT);                                                          \
82
5.83k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitObjCObjectType(clang::ObjCObjectType const*)
Line
Count
Source
80
74.4k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
74.4k
  DISPATCH(PARENT);                                                          \
82
74.4k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitObjCInterfaceType(clang::ObjCInterfaceType const*)
Line
Count
Source
80
66.5k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
66.5k
  DISPATCH(PARENT);                                                          \
82
66.5k
}
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitObjCObjectPointerType(clang::ObjCObjectPointerType const*)
Line
Count
Source
80
23.1k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
23.1k
  DISPATCH(PARENT);                                                          \
82
23.1k
}
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitPipeType(clang::PipeType const*)
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitAtomicType(clang::AtomicType const*)
Line
Count
Source
80
7.81k
#define TYPE(CLASS, PARENT) RetTy Visit##CLASS##Type(const CLASS##Type *T) { \
81
7.81k
  DISPATCH(PARENT);                                                          \
82
7.81k
}
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::SubstObjCTypeArgsVisitor, clang::QualType>::VisitFunctionType(clang::FunctionType const*)
83
#include "clang/AST/TypeNodes.def"
84
85
  /// Method called if \c ImpClass doesn't provide specific handler
86
  /// for some type class.
87
46.1M
  RetTy VisitType(const Type*) { return RetTy(); }
clang::TypeVisitor<clang::ASTDumper, void>::VisitType(clang::Type const*)
Line
Count
Source
87
1.03k
  RetTy VisitType(const Type*) { return RetTy(); }
clang::TypeVisitor<clang::JSONDumper, void>::VisitType(clang::Type const*)
Line
Count
Source
87
105
  RetTy VisitType(const Type*) { return RetTy(); }
clang::TypeVisitor<clang::JSONNodeDumper, void>::VisitType(clang::Type const*)
Line
Count
Source
87
85
  RetTy VisitType(const Type*) { return RetTy(); }
clang::TypeVisitor<clang::TextNodeDumper, void>::VisitType(clang::Type const*)
Line
Count
Source
87
962
  RetTy VisitType(const Type*) { return RetTy(); }
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::SubstObjCTypeArgsVisitor, clang::QualType>::VisitType(clang::Type const*)
Unexecuted instantiation: Type.cpp:clang::TypeVisitor<(anonymous namespace)::StripObjCKindOfTypeVisitor, clang::QualType>::VisitType(clang::Type const*)
Type.cpp:clang::TypeVisitor<(anonymous namespace)::GetContainedDeducedTypeVisitor, clang::Type*>::VisitType(clang::Type const*)
Line
Count
Source
87
46.1M
  RetTy VisitType(const Type*) { return RetTy(); }
88
};
89
90
#undef DISPATCH
91
92
}  // end namespace clang
93
94
#endif