LLVM 22.0.0git
llvm::pdb::LayoutItemBase Class Reference

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

Inheritance diagram for llvm::pdb::LayoutItemBase:
[legend]

Public Member Functions

 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

Protected Attributes

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 36 of file UDTLayout.h.

Constructor & Destructor Documentation

◆ LayoutItemBase()

◆ ~LayoutItemBase()

virtual llvm::pdb::LayoutItemBase::~LayoutItemBase ( )
virtualdefault

References deepPaddingSize().

Member Function Documentation

◆ containsOffset()

uint32_t llvm::pdb::LayoutItemBase::containsOffset ( uint32_t Off) const
inline

Definition at line 57 of file UDTLayout.h.

References getOffsetInParent(), and getSize().

◆ deepPaddingSize()

uint32_t LayoutItemBase::deepPaddingSize ( ) const

Definition at line 59 of file UDTLayout.cpp.

References UsedBytes.

Referenced by ~LayoutItemBase().

◆ getLayoutSize()

uint32_t llvm::pdb::LayoutItemBase::getLayoutSize ( ) const
inline

Definition at line 51 of file UDTLayout.h.

References LayoutSize.

◆ getName()

StringRef llvm::pdb::LayoutItemBase::getName ( ) const
inline

◆ getOffsetInParent()

uint32_t llvm::pdb::LayoutItemBase::getOffsetInParent ( ) const
inline

Definition at line 49 of file UDTLayout.h.

References OffsetInParent.

Referenced by llvm::pdb::UDTLayoutBase::addChildToLayout(), and containsOffset().

◆ getParent()

const UDTLayoutBase * llvm::pdb::LayoutItemBase::getParent ( ) const
inline

Definition at line 47 of file UDTLayout.h.

References Parent.

◆ getSize()

uint32_t llvm::pdb::LayoutItemBase::getSize ( ) const
inline

Definition at line 50 of file UDTLayout.h.

References SizeOf.

◆ getSymbol()

const PDBSymbol * llvm::pdb::LayoutItemBase::getSymbol ( ) const
inline

Definition at line 52 of file UDTLayout.h.

References Symbol.

◆ immediatePadding()

virtual uint32_t llvm::pdb::LayoutItemBase::immediatePadding ( ) const
inlinevirtual

Reimplemented in llvm::pdb::ClassLayout.

Definition at line 44 of file UDTLayout.h.

◆ isElided()

bool llvm::pdb::LayoutItemBase::isElided ( ) const
inline

Definition at line 54 of file UDTLayout.h.

References IsElided.

◆ isVBPtr()

virtual bool llvm::pdb::LayoutItemBase::isVBPtr ( ) const
inlinevirtual

Reimplemented in llvm::pdb::VBPtrLayoutItem.

Definition at line 55 of file UDTLayout.h.

◆ tailPadding()

uint32_t LayoutItemBase::tailPadding ( ) const
virtual

Reimplemented in llvm::pdb::UDTLayoutBase.

Definition at line 63 of file UDTLayout.cpp.

References llvm::Last, and UsedBytes.

Referenced by llvm::pdb::UDTLayoutBase::tailPadding().

◆ usedBytes()

const BitVector & llvm::pdb::LayoutItemBase::usedBytes ( ) const
inline

Definition at line 53 of file UDTLayout.h.

References UsedBytes.

Member Data Documentation

◆ IsElided

bool llvm::pdb::LayoutItemBase::IsElided = false
protected

Definition at line 71 of file UDTLayout.h.

Referenced by isElided(), LayoutItemBase(), and llvm::pdb::UDTLayoutBase::UDTLayoutBase().

◆ LayoutSize

◆ Name

std::string llvm::pdb::LayoutItemBase::Name
protected

Definition at line 67 of file UDTLayout.h.

Referenced by getName(), LayoutItemBase(), and llvm::pdb::UDTLayoutBase::UDTLayoutBase().

◆ OffsetInParent

uint32_t llvm::pdb::LayoutItemBase::OffsetInParent = 0
protected

◆ Parent

◆ SizeOf

◆ Symbol

const PDBSymbol* llvm::pdb::LayoutItemBase::Symbol = nullptr
protected

◆ UsedBytes


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