LLVM  8.0.1
Public Member Functions | List of all members
llvm::pdb::DataMemberLayoutItem Class Reference

#include "llvm/DebugInfo/PDB/UDTLayout.h"

Inheritance diagram for llvm::pdb::DataMemberLayoutItem:
Inheritance graph
[legend]
Collaboration diagram for llvm::pdb::DataMemberLayoutItem:
Collaboration graph
[legend]

Public Member Functions

 DataMemberLayoutItem (const UDTLayoutBase &Parent, std::unique_ptr< PDBSymbolData > DataMember)
 
const PDBSymbolDatagetDataMember ()
 
bool hasUDTLayout () const
 
const ClassLayoutgetUDTLayout () const
 
- Public Member Functions inherited from llvm::pdb::LayoutItemBase
 LayoutItemBase (const UDTLayoutBase *Parent, const PDBSymbol *Symbol, const std::string &Name, uint32_t OffsetInParent, uint32_t Size, bool IsElided)
 
virtual ~LayoutItemBase ()=default
 
uint32_t deepPaddingSize () const
 
virtual uint32_t immediatePadding () const
 
virtual uint32_t tailPadding () const
 
const UDTLayoutBasegetParent () const
 
StringRef getName () const
 
uint32_t getOffsetInParent () const
 
uint32_t getSize () const
 
uint32_t getLayoutSize () const
 
const PDBSymbolgetSymbol () const
 
const BitVectorusedBytes () const
 
bool isElided () const
 
virtual bool isVBPtr () const
 
uint32_t containsOffset (uint32_t Off) const
 

Additional Inherited Members

- Protected Attributes inherited from llvm::pdb::LayoutItemBase
const PDBSymbolSymbol = nullptr
 
const UDTLayoutBaseParent = nullptr
 
BitVector UsedBytes
 
std::string Name
 
uint32_t OffsetInParent = 0
 
uint32_t SizeOf = 0
 
uint32_t LayoutSize = 0
 
bool IsElided = false
 

Detailed Description

Definition at line 85 of file UDTLayout.h.

Constructor & Destructor Documentation

◆ DataMemberLayoutItem()

DataMemberLayoutItem::DataMemberLayoutItem ( const UDTLayoutBase Parent,
std::unique_ptr< PDBSymbolData DataMember 
)

Definition at line 68 of file UDTLayout.cpp.

References llvm::pdb::UDT, and llvm::pdb::LayoutItemBase::UsedBytes.

Member Function Documentation

◆ getDataMember()

const PDBSymbolData & DataMemberLayoutItem::getDataMember ( )

Definition at line 87 of file UDTLayout.cpp.

References llvm::dyn_cast(), and llvm::pdb::LayoutItemBase::Symbol.

◆ getUDTLayout()

const ClassLayout & DataMemberLayoutItem::getUDTLayout ( ) const

Definition at line 93 of file UDTLayout.cpp.

◆ hasUDTLayout()

bool DataMemberLayoutItem::hasUDTLayout ( ) const

Definition at line 91 of file UDTLayout.cpp.


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