LLVM 23.0.0git
llvm::codeview::TagRecord Class Reference

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

Inheritance diagram for llvm::codeview::TagRecord:
[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]

◆ TagRecord() [2/3]

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

◆ TagRecord() [3/3]

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

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

◆ HfaKindMask

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

◆ HfaKindShift

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

◆ MemberCount

◆ Name

◆ Options

◆ UniqueName

◆ 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: