clang 18.0.0git
Classes | Namespaces | Typedefs
API.h File Reference

This file defines the APIRecord-based structs and the APISet class. More...

#include "clang/AST/Decl.h"
#include "clang/AST/DeclObjC.h"
#include "clang/AST/RawCommentList.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/Specifiers.h"
#include "clang/ExtractAPI/AvailabilityInfo.h"
#include "clang/ExtractAPI/DeclarationFragments.h"
#include "llvm/ADT/MapVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Casting.h"
#include "llvm/TargetParser/Triple.h"
#include <memory>
#include <type_traits>

Go to the source code of this file.

Classes

class  clang::extractapi::Template
 
struct  clang::extractapi::APIRecord
 The base representation of an API record. Holds common symbol information. More...
 
struct  clang::extractapi::APIRecord::HierarchyInformation
 Stores information about the context of the declaration of this API. More...
 
struct  clang::extractapi::NamespaceRecord
 
struct  clang::extractapi::GlobalFunctionRecord
 This holds information associated with global functions. More...
 
struct  clang::extractapi::GlobalFunctionTemplateRecord
 
struct  clang::extractapi::GlobalFunctionTemplateSpecializationRecord
 
struct  clang::extractapi::GlobalVariableRecord
 This holds information associated with global functions. More...
 
struct  clang::extractapi::GlobalVariableTemplateRecord
 
struct  clang::extractapi::GlobalVariableTemplateSpecializationRecord
 
struct  clang::extractapi::GlobalVariableTemplatePartialSpecializationRecord
 
struct  clang::extractapi::EnumConstantRecord
 This holds information associated with enum constants. More...
 
struct  clang::extractapi::EnumRecord
 This holds information associated with enums. More...
 
struct  clang::extractapi::StructFieldRecord
 This holds information associated with struct fields. More...
 
struct  clang::extractapi::StructRecord
 This holds information associated with structs. More...
 
struct  clang::extractapi::CXXFieldRecord
 
struct  clang::extractapi::CXXFieldTemplateRecord
 
struct  clang::extractapi::CXXMethodRecord
 
struct  clang::extractapi::CXXConstructorRecord
 
struct  clang::extractapi::CXXDestructorRecord
 
struct  clang::extractapi::CXXStaticMethodRecord
 
struct  clang::extractapi::CXXInstanceMethodRecord
 
struct  clang::extractapi::CXXMethodTemplateRecord
 
struct  clang::extractapi::CXXMethodTemplateSpecializationRecord
 
struct  clang::extractapi::ObjCPropertyRecord
 This holds information associated with Objective-C properties. More...
 
struct  clang::extractapi::ObjCInstancePropertyRecord
 
struct  clang::extractapi::ObjCClassPropertyRecord
 
struct  clang::extractapi::ObjCInstanceVariableRecord
 This holds information associated with Objective-C instance variables. More...
 
struct  clang::extractapi::ObjCMethodRecord
 This holds information associated with Objective-C methods. More...
 
struct  clang::extractapi::ObjCInstanceMethodRecord
 
struct  clang::extractapi::ObjCClassMethodRecord
 
struct  clang::extractapi::SymbolReference
 This represents a reference to another symbol that might come from external sources. More...
 
struct  clang::extractapi::StaticFieldRecord
 
struct  clang::extractapi::ObjCContainerRecord
 The base representation of an Objective-C container record. More...
 
struct  clang::extractapi::CXXClassRecord
 
struct  clang::extractapi::ClassTemplateRecord
 
struct  clang::extractapi::ClassTemplateSpecializationRecord
 
struct  clang::extractapi::ClassTemplatePartialSpecializationRecord
 
struct  clang::extractapi::ConceptRecord
 
struct  clang::extractapi::ObjCCategoryRecord
 This holds information associated with Objective-C categories. More...
 
struct  clang::extractapi::ObjCInterfaceRecord
 This holds information associated with Objective-C interfaces/classes. More...
 
struct  clang::extractapi::ObjCProtocolRecord
 This holds information associated with Objective-C protocols. More...
 
struct  clang::extractapi::MacroDefinitionRecord
 This holds information associated with macro definitions. More...
 
struct  clang::extractapi::TypedefRecord
 This holds information associated with typedefs. More...
 
struct  clang::extractapi::has_function_signature< RecordTy >
 Check if a record type has a function signature mixin. More...
 
struct  clang::extractapi::has_function_signature< GlobalFunctionRecord >
 
struct  clang::extractapi::has_function_signature< ObjCMethodRecord >
 
struct  clang::extractapi::has_function_signature< ObjCInstanceMethodRecord >
 
struct  clang::extractapi::has_function_signature< ObjCClassMethodRecord >
 
struct  clang::extractapi::has_function_signature< CXXInstanceMethodRecord >
 
struct  clang::extractapi::has_function_signature< CXXStaticMethodRecord >
 
struct  clang::extractapi::has_function_signature< CXXMethodTemplateRecord >
 
struct  clang::extractapi::has_function_signature< CXXMethodTemplateSpecializationRecord >
 
struct  clang::extractapi::has_access< RecordTy >
 
struct  clang::extractapi::has_access< CXXInstanceMethodRecord >
 
struct  clang::extractapi::has_access< CXXStaticMethodRecord >
 
struct  clang::extractapi::has_access< CXXFieldRecord >
 
struct  clang::extractapi::has_access< CXXMethodTemplateRecord >
 
struct  clang::extractapi::has_access< CXXMethodTemplateSpecializationRecord >
 
struct  clang::extractapi::has_access< CXXFieldTemplateRecord >
 
struct  clang::extractapi::has_access< CXXClassRecord >
 
struct  clang::extractapi::has_access< ClassTemplateRecord >
 
struct  clang::extractapi::has_access< ClassTemplateSpecializationRecord >
 
struct  clang::extractapi::has_access< ClassTemplatePartialSpecializationRecord >
 
struct  clang::extractapi::has_template< RecordTy >
 
struct  clang::extractapi::has_template< ClassTemplateRecord >
 
struct  clang::extractapi::has_template< ClassTemplatePartialSpecializationRecord >
 
struct  clang::extractapi::has_template< ConceptRecord >
 
struct  clang::extractapi::has_template< GlobalVariableTemplateRecord >
 
struct  clang::extractapi::has_template< GlobalVariableTemplatePartialSpecializationRecord >
 
struct  clang::extractapi::has_template< CXXMethodTemplateRecord >
 
struct  clang::extractapi::has_template< CXXFieldTemplateRecord >
 
struct  clang::extractapi::has_template< GlobalFunctionTemplateRecord >
 
struct  clang::extractapi::has_function_signature< GlobalFunctionTemplateRecord >
 
struct  clang::extractapi::has_function_signature< GlobalFunctionTemplateSpecializationRecord >
 
class  clang::extractapi::APISet
 APISet holds the set of API records collected from given inputs. More...
 

Namespaces

namespace  clang
 
namespace  clang::extractapi
 

Typedefs

using clang::extractapi::DocComment = std::vector< RawComment::CommentLine >
 DocComment is a vector of RawComment::CommentLine.
 

Detailed Description

This file defines the APIRecord-based structs and the APISet class.

Clang ExtractAPI is a tool to collect API information from a given set of header files. The structures in this file describe data representations of the API information collected for various kinds of symbols.

Definition in file API.h.