LLVM 19.0.0git
Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | List of all members
llvm::codeview::TagRecord Class Reference

#include "llvm/DebugInfo/CodeView/TypeRecord.h"

Inheritance diagram for llvm::codeview::TagRecord:
Inheritance graph
[legend]

Public Member Functions

bool hasUniqueName () const
 
bool isNested () const
 
bool isForwardRef () const
 
bool containsNestedClass () const
 
bool isScoped () const
 
uint16_t getMemberCount () const
 
ClassOptions getOptions () const
 
TypeIndex getFieldList () const
 
StringRef getName () const
 
StringRef getUniqueName () const
 
- Public Member Functions inherited from llvm::codeview::TypeRecord
TypeRecordKind getKind () const
 

Public Attributes

uint16_t MemberCount = 0
 
ClassOptions Options = ClassOptions::None
 
TypeIndex FieldList
 
StringRef Name
 
StringRef UniqueName
 
- Public Attributes inherited from llvm::codeview::TypeRecord
TypeRecordKind Kind
 

Static Public Attributes

static const int HfaKindShift = 11
 
static const int HfaKindMask = 0x1800
 
static const int WinRTKindShift = 14
 
static const int WinRTKindMask = 0xC000
 

Protected Member Functions

 TagRecord ()=default
 
 TagRecord (TypeRecordKind Kind)
 
 TagRecord (TypeRecordKind Kind, uint16_t MemberCount, ClassOptions Options, TypeIndex FieldList, StringRef Name, StringRef UniqueName)
 
- Protected Member Functions inherited from llvm::codeview::TypeRecord
 TypeRecord ()=default
 
 TypeRecord (TypeRecordKind Kind)
 

Detailed Description

Definition at line 416 of file TypeRecord.h.

Constructor & Destructor Documentation

◆ TagRecord() [1/3]

llvm::codeview::TagRecord::TagRecord ( )
protecteddefault

◆ TagRecord() [2/3]

llvm::codeview::TagRecord::TagRecord ( TypeRecordKind  Kind)
inlineexplicitprotected

Definition at line 419 of file TypeRecord.h.

◆ TagRecord() [3/3]

llvm::codeview::TagRecord::TagRecord ( TypeRecordKind  Kind,
uint16_t  MemberCount,
ClassOptions  Options,
TypeIndex  FieldList,
StringRef  Name,
StringRef  UniqueName 
)
inlineprotected

Definition at line 420 of file TypeRecord.h.

Member Function Documentation

◆ containsNestedClass()

bool llvm::codeview::TagRecord::containsNestedClass ( ) const
inline

Definition at line 443 of file TypeRecord.h.

References llvm::codeview::ContainsNestedClass, llvm::codeview::None, and Options.

◆ getFieldList()

TypeIndex llvm::codeview::TagRecord::getFieldList ( ) const
inline

Definition at line 453 of file TypeRecord.h.

References FieldList.

Referenced by llvm::logicalview::LVLogicalVisitor::visitKnownRecord().

◆ getMemberCount()

uint16_t llvm::codeview::TagRecord::getMemberCount ( ) const
inline

Definition at line 451 of file TypeRecord.h.

References MemberCount.

◆ getName()

StringRef llvm::codeview::TagRecord::getName ( ) const
inline

Definition at line 454 of file TypeRecord.h.

References Name.

Referenced by llvm::pdb::TpiStream::findFullDeclForForwardRef(), and getHashForUdt().

◆ getOptions()

ClassOptions llvm::codeview::TagRecord::getOptions ( ) const
inline

Definition at line 452 of file TypeRecord.h.

References Options.

Referenced by getHashForUdt().

◆ getUniqueName()

StringRef llvm::codeview::TagRecord::getUniqueName ( ) const
inline

Definition at line 455 of file TypeRecord.h.

References UniqueName.

Referenced by llvm::pdb::TpiStream::findFullDeclForForwardRef(), and getHashForUdt().

◆ hasUniqueName()

bool llvm::codeview::TagRecord::hasUniqueName ( ) const
inline

◆ isForwardRef()

bool llvm::codeview::TagRecord::isForwardRef ( ) const
inline

Definition at line 439 of file TypeRecord.h.

References llvm::codeview::ForwardReference, llvm::codeview::None, and Options.

◆ isNested()

bool llvm::codeview::TagRecord::isNested ( ) const
inline

Definition at line 435 of file TypeRecord.h.

References llvm::codeview::Nested, llvm::codeview::None, and Options.

◆ isScoped()

bool llvm::codeview::TagRecord::isScoped ( ) const
inline

Definition at line 447 of file TypeRecord.h.

References llvm::codeview::None, Options, and llvm::codeview::Scoped.

Member Data Documentation

◆ FieldList

TypeIndex llvm::codeview::TagRecord::FieldList

Definition at line 459 of file TypeRecord.h.

Referenced by getFieldList().

◆ HfaKindMask

const int llvm::codeview::TagRecord::HfaKindMask = 0x1800
static

◆ HfaKindShift

const int llvm::codeview::TagRecord::HfaKindShift = 11
static

◆ MemberCount

uint16_t llvm::codeview::TagRecord::MemberCount = 0

Definition at line 457 of file TypeRecord.h.

Referenced by getMemberCount().

◆ Name

StringRef llvm::codeview::TagRecord::Name

Definition at line 460 of file TypeRecord.h.

Referenced by getName().

◆ Options

ClassOptions llvm::codeview::TagRecord::Options = ClassOptions::None

◆ UniqueName

StringRef llvm::codeview::TagRecord::UniqueName

Definition at line 461 of file TypeRecord.h.

Referenced by getUniqueName().

◆ WinRTKindMask

const int llvm::codeview::TagRecord::WinRTKindMask = 0xC000
static

Definition at line 429 of file TypeRecord.h.

Referenced by llvm::codeview::ClassRecord::getWinRTKind().

◆ WinRTKindShift

const int llvm::codeview::TagRecord::WinRTKindShift = 14
static

Definition at line 428 of file TypeRecord.h.

Referenced by llvm::codeview::ClassRecord::getWinRTKind().


The documentation for this class was generated from the following file: