clang 19.0.0git
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
clang::extractapi::TypedefRecord Struct Reference

This holds information associated with typedefs. More...

#include "clang/ExtractAPI/API.h"

Inheritance diagram for clang::extractapi::TypedefRecord:
Inheritance graph
[legend]

Public Member Functions

 TypedefRecord (StringRef USR, StringRef Name, PresumedLoc Loc, AvailabilityInfo Availability, const DocComment &Comment, DeclarationFragments Declaration, DeclarationFragments SubHeading, SymbolReference UnderlyingType, bool IsFromSystemHeader)
 
- Public Member Functions inherited from clang::extractapi::APIRecord
RecordKind getKind () const
 
 APIRecord ()=delete
 
 APIRecord (RecordKind Kind, StringRef USR, StringRef Name, PresumedLoc Location, AvailabilityInfo Availability, LinkageInfo Linkage, const DocComment &Comment, DeclarationFragments Declaration, DeclarationFragments SubHeading, bool IsFromSystemHeader)
 
 APIRecord (RecordKind Kind, StringRef USR, StringRef Name)
 
virtual ~APIRecord ()=0
 

Static Public Member Functions

static bool classof (const APIRecord *Record)
 

Public Attributes

SymbolReference UnderlyingType
 
- Public Attributes inherited from clang::extractapi::APIRecord
StringRef USR
 
StringRef Name
 
PresumedLoc Location
 
AvailabilityInfo Availability
 
LinkageInfo Linkage
 
DocComment Comment
 Documentation comment lines attached to this symbol declaration.
 
DeclarationFragments Declaration
 Declaration fragments of this symbol declaration.
 
DeclarationFragments SubHeading
 SubHeading provides a more detailed representation than the plain declaration name.
 
HierarchyInformation ParentInformation
 Information about the parent record of this record.
 
bool IsFromSystemHeader
 Whether the symbol was defined in a system header.
 

Additional Inherited Members

- Public Types inherited from clang::extractapi::APIRecord
enum  RecordKind {
  RK_Unknown , RK_Namespace , RK_GlobalFunction , RK_GlobalFunctionTemplate ,
  RK_GlobalFunctionTemplateSpecialization , RK_GlobalVariable , RK_GlobalVariableTemplate , RK_GlobalVariableTemplateSpecialization ,
  RK_GlobalVariableTemplatePartialSpecialization , RK_EnumConstant , RK_Enum , RK_StructField ,
  RK_Struct , RK_UnionField , RK_Union , RK_StaticField ,
  RK_CXXField , RK_CXXFieldTemplate , RK_CXXClass , RK_ClassTemplate ,
  RK_ClassTemplateSpecialization , RK_ClassTemplatePartialSpecialization , RK_Concept , RK_CXXStaticMethod ,
  RK_CXXInstanceMethod , RK_CXXConstructorMethod , RK_CXXDestructorMethod , RK_CXXMethodTemplate ,
  RK_CXXMethodTemplateSpecialization , RK_ObjCInstanceProperty , RK_ObjCClassProperty , RK_ObjCIvar ,
  RK_ObjCClassMethod , RK_ObjCInstanceMethod , RK_ObjCInterface , RK_ObjCCategory ,
  RK_ObjCCategoryModule , RK_ObjCProtocol , RK_MacroDefinition , RK_Typedef
}
 Discriminator for LLVM-style RTTI (dyn_cast<> et al.) More...
 

Detailed Description

This holds information associated with typedefs.

Note: Typedefs for anonymous enums and structs typically don't get emitted by the serializers but still get a TypedefRecord. Instead we use the typedef name as a name for the underlying anonymous struct or enum.

Definition at line 1101 of file API.h.

Constructor & Destructor Documentation

◆ TypedefRecord()

clang::extractapi::TypedefRecord::TypedefRecord ( StringRef  USR,
StringRef  Name,
PresumedLoc  Loc,
AvailabilityInfo  Availability,
const DocComment Comment,
DeclarationFragments  Declaration,
DeclarationFragments  SubHeading,
SymbolReference  UnderlyingType,
bool  IsFromSystemHeader 
)
inline

Definition at line 1104 of file API.h.

Member Function Documentation

◆ classof()

static bool clang::extractapi::TypedefRecord::classof ( const APIRecord Record)
inlinestatic

Definition at line 1114 of file API.h.

References clang::extractapi::APIRecord::RK_Typedef.

Member Data Documentation

◆ UnderlyingType

SymbolReference clang::extractapi::TypedefRecord::UnderlyingType

Definition at line 1102 of file API.h.


The documentation for this struct was generated from the following files: