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

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

#include "clang/AST/Availability.h"
#include "clang/AST/DeclBase.h"
#include "clang/AST/RawCommentList.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/ExtractAPI/DeclarationFragments.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Casting.h"
#include "llvm/TargetParser/Triple.h"
#include <cstddef>
#include <iterator>
#include <memory>
#include <optional>
#include <type_traits>

Go to the source code of this file.

Classes

class  clang::extractapi::Template
 
struct  clang::extractapi::SymbolReference
 sources. More...
 
struct  clang::extractapi::APIRecord
 The base representation of an API record. Holds common symbol information. More...
 
class  clang::extractapi::RecordContext
 Base class used for specific record types that have children records this is analogous to the DeclContext for the AST. More...
 
struct  clang::extractapi::RecordContext::record_iterator
 
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::TagRecord
 
struct  clang::extractapi::EnumRecord
 This holds information associated with enums. More...
 
struct  clang::extractapi::RecordFieldRecord
 This holds information associated with struct or union fields fields. More...
 
struct  clang::extractapi::RecordRecord
 This holds information associated with structs and unions. More...
 
struct  clang::extractapi::StructFieldRecord
 
struct  clang::extractapi::StructRecord
 
struct  clang::extractapi::UnionFieldRecord
 
struct  clang::extractapi::UnionRecord
 
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::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...
 
class  clang::extractapi::APISet
 APISet holds the set of API records collected from given inputs. More...
 
struct  clang::extractapi::ToRecordContextCastInfoWrapper< FromTy, IsKnownSubType >
 
struct  clang::extractapi::ToRecordContextCastInfoWrapper< FromTy, true >
 
struct  clang::extractapi::FromRecordContextCastInfoWrapper< ToTy, IsKnownSubType >
 
struct  clang::extractapi::FromRecordContextCastInfoWrapper< ToTy, true >
 
struct  llvm::CastInfo<::clang::extractapi::RecordContext, FromTy * >
 
struct  llvm::CastInfo<::clang::extractapi::RecordContext, const FromTy * >
 
struct  llvm::CastInfo< ToTy, ::clang::extractapi::RecordContext * >
 
struct  llvm::CastInfo< ToTy, const ::clang::extractapi::RecordContext * >
 

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 
namespace  clang::extractapi
 
namespace  llvm
 Diagnostic wrappers for TextAPI types for error reporting.
 

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.