LLVM: llvm::pdb::BaseClassLayout Class Reference (original) (raw)

#include "[llvm/DebugInfo/PDB/UDTLayout.h](UDTLayout%5F8h%5Fsource.html)"

Inheritance diagram for llvm::pdb::BaseClassLayout:

Public Member Functions
LLVM_ABI BaseClassLayout (const UDTLayoutBase &Parent, uint32_t OffsetInParent, bool Elide, std::unique_ptr< PDBSymbolTypeBaseClass > Base)
const PDBSymbolTypeBaseClass & getBase () const
bool isVirtualBase () const
bool isEmptyBase ()
Public Member Functions inherited from llvm::pdb::UDTLayoutBase
UDTLayoutBase (const UDTLayoutBase *Parent, const PDBSymbol &Sym, const std::string &Name, uint32_t OffsetInParent, uint32_t Size, bool IsElided)
UDTLayoutBase (UDTLayoutBase const &)=delete
UDTLayoutBase & operator= (UDTLayoutBase const &)=delete
uint32_t tailPadding () const override
ArrayRef< LayoutItemBase * > layout_items () const
ArrayRef< BaseClassLayout * > bases () const
ArrayRef< BaseClassLayout * > regular_bases () const
ArrayRef< BaseClassLayout * > virtual_bases () const
uint32_t directVirtualBaseCount () const
ArrayRef< std::unique_ptr< PDBSymbolFunc > > funcs () const
ArrayRef< std::unique_ptr< PDBSymbol > > other_items () 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
const UDTLayoutBase * getParent () const
StringRef getName () const
uint32_t getOffsetInParent () const
uint32_t getSize () const
uint32_t getLayoutSize () const
const PDBSymbol * getSymbol () const
const BitVector & usedBytes () const
bool isElided () const
virtual bool isVBPtr () const
uint32_t containsOffset (uint32_t Off) const
Additional Inherited Members
Protected Member Functions inherited from llvm::pdb::UDTLayoutBase
bool hasVBPtrAtOffset (uint32_t Off) const
void initializeChildren (const PDBSymbol &Sym)
void addChildToLayout (std::unique_ptr< LayoutItemBase > Child)
Protected Attributes inherited from llvm::pdb::UDTLayoutBase
uint32_t DirectVBaseCount = 0
UniquePtrVector< PDBSymbol > Other
UniquePtrVector< PDBSymbolFunc > Funcs
UniquePtrVector< LayoutItemBase > ChildStorage
std::vector< LayoutItemBase * > LayoutItems
std::vector< BaseClassLayout * > AllBases
ArrayRef< BaseClassLayout * > NonVirtualBases
ArrayRef< BaseClassLayout * > VirtualBases
VTableLayoutItem * VTable = nullptr
VBPtrLayoutItem * VBPtr = nullptr
Protected Attributes inherited from llvm::pdb::LayoutItemBase
const PDBSymbol * Symbol = nullptr
const UDTLayoutBase * Parent = nullptr
BitVector UsedBytes
std::string Name
uint32_t OffsetInParent = 0
uint32_t SizeOf = 0
uint32_t LayoutSize = 0
bool IsElided = false

Detailed Description

Constructor & Destructor Documentation

Member Function Documentation

getBase()

isEmptyBase()

bool llvm::pdb::BaseClassLayout::isEmptyBase ( ) inline

isVirtualBase()

bool llvm::pdb::BaseClassLayout::isVirtualBase ( ) const inline

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