class UDTLayoutBase
Declaration
class UDTLayoutBase : public LayoutItemBase { /* full declaration omitted */ };
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:109
Inherits from: LayoutItemBase
Member Variables
- protected uint32_t DirectVBaseCount = 0
- protected UniquePtrVector<llvm::pdb::PDBSymbol> Other
- protected UniquePtrVector<llvm::pdb::PDBSymbolFunc> Funcs
- protected UniquePtrVector<llvm::pdb::LayoutItemBase> ChildStorage
- protected std::vector<LayoutItemBase*> LayoutItems
- protected std::vector<BaseClassLayout*> AllBases
- protected ArrayRef<llvm::pdb::BaseClassLayout*> NonVirtualBases
- protected ArrayRef<llvm::pdb::BaseClassLayout*> VirtualBases
- protected llvm::pdb::VTableLayoutItem* VTable = nullptr
- protected llvm::pdb::VBPtrLayoutItem* VBPtr = nullptr
Inherited from LayoutItemBase:
- protected Symbol = nullptr
- protected Parent = nullptr
- protected UsedBytes
- protected Name
- protected OffsetInParent = 0
- protected SizeOf = 0
- protected LayoutSize = 0
- protected IsElided = false
Method Overview
- public UDTLayoutBase(const llvm::pdb::UDTLayoutBase * Parent, const llvm::pdb::PDBSymbol & Sym, const std::string & Name, uint32_t OffsetInParent, uint32_t Size, bool IsElided)
- protected void addChildToLayout(std::unique_ptr<LayoutItemBase> Child)
- public ArrayRef<llvm::pdb::BaseClassLayout *> bases() const
- public uint32_t directVirtualBaseCount() const
- public ArrayRef<std::unique_ptr<PDBSymbolFunc>> funcs() const
- protected bool hasVBPtrAtOffset(uint32_t Off) const
- protected void initializeChildren(const llvm::pdb::PDBSymbol & Sym)
- public ArrayRef<llvm::pdb::LayoutItemBase *> layout_items() const
- public ArrayRef<std::unique_ptr<PDBSymbol>> other_items() const
- public ArrayRef<llvm::pdb::BaseClassLayout *> regular_bases() const
- public uint32_t tailPadding() const
- public ArrayRef<llvm::pdb::BaseClassLayout *> virtual_bases() const
Inherited from LayoutItemBase:
- public containsOffset
- public deepPaddingSize
- public getLayoutSize
- public getName
- public getOffsetInParent
- public getParent
- public getSize
- public getSymbol
- public immediatePadding
- public isElided
- public isVBPtr
- public tailPadding
- public usedBytes
Methods
¶UDTLayoutBase(
const llvm::pdb::UDTLayoutBase* Parent,
const llvm::pdb::PDBSymbol& Sym,
const std::string& Name,
uint32_t OffsetInParent,
uint32_t Size,
bool IsElided)
UDTLayoutBase(
const llvm::pdb::UDTLayoutBase* Parent,
const llvm::pdb::PDBSymbol& Sym,
const std::string& Name,
uint32_t OffsetInParent,
uint32_t Size,
bool IsElided)
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:113
Parameters
- const llvm::pdb::UDTLayoutBase* Parent
- const llvm::pdb::PDBSymbol& Sym
- const std::string& Name
- uint32_t OffsetInParent
- uint32_t Size
- bool IsElided
¶void addChildToLayout(
std::unique_ptr<LayoutItemBase> Child)
void addChildToLayout(
std::unique_ptr<LayoutItemBase> Child)
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:130
Parameters
- std::unique_ptr<LayoutItemBase> Child
¶ArrayRef<llvm::pdb::BaseClassLayout*> bases()
const
ArrayRef<llvm::pdb::BaseClassLayout*> bases()
const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:119
¶uint32_t directVirtualBaseCount() const
uint32_t directVirtualBaseCount() const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:122
¶ArrayRef<std::unique_ptr<PDBSymbolFunc>> funcs()
const
ArrayRef<std::unique_ptr<PDBSymbolFunc>> funcs()
const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:123
¶bool hasVBPtrAtOffset(uint32_t Off) const
bool hasVBPtrAtOffset(uint32_t Off) const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:127
Parameters
- uint32_t Off
¶void initializeChildren(
const llvm::pdb::PDBSymbol& Sym)
void initializeChildren(
const llvm::pdb::PDBSymbol& Sym)
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:128
Parameters
- const llvm::pdb::PDBSymbol& Sym
¶ArrayRef<llvm::pdb::LayoutItemBase*>
layout_items() const
ArrayRef<llvm::pdb::LayoutItemBase*>
layout_items() const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:118
¶ArrayRef<std::unique_ptr<PDBSymbol>> other_items()
const
ArrayRef<std::unique_ptr<PDBSymbol>> other_items()
const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:124
¶ArrayRef<llvm::pdb::BaseClassLayout*>
regular_bases() const
ArrayRef<llvm::pdb::BaseClassLayout*>
regular_bases() const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:120
¶uint32_t tailPadding() const
uint32_t tailPadding() const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:117
¶ArrayRef<llvm::pdb::BaseClassLayout*>
virtual_bases() const
ArrayRef<llvm::pdb::BaseClassLayout*>
virtual_bases() const
Declared at: llvm/include/llvm/DebugInfo/PDB/UDTLayout.h:121