9#ifndef LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFBASEDIE_H
10#define LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFBASEDIE_H
15#include "llvm/Support/Error.h"
24class DWARFDebugInfoEntry;
25class DWARFDeclContext;
46 explicit operator bool()
const {
return IsValid(); }
106 const char *fail_value)
const;
109 uint64_t fail_value)
const;
111 std::optional<uint64_t>
115 uint64_t fail_value)
const;
DWARFAttributes GetAttributes(Recurse recurse=Recurse::yes) const
DWARFBaseDIE(const DWARFUnit *cu, DWARFDebugInfoEntry *die)
std::optional< uint64_t > GetAttributeValueAsOptionalUnsigned(const dw_attr_t attr) const
void Set(DWARFUnit *cu, DWARFDebugInfoEntry *die)
DWARFBaseDIE(DWARFUnit *cu, DWARFDebugInfoEntry *die)
const DWARFDataExtractor & GetData() const
const char * GetAttributeValueAsString(const dw_attr_t attr, const char *fail_value) const
std::optional< DIERef > GetDIERef() const
lldb::ModuleSP GetModule() const
SymbolFileDWARF * GetDWARF() const
DWARFDebugInfoEntry * m_die
DWARFBaseDIE(DWARFUnit *cu, const DWARFDebugInfoEntry *die)
DWARFDebugInfoEntry * GetDIE() const
DWARFUnit * GetCU() const
bool Supports_DW_AT_APPLE_objc_complete_type() const
const char * GetName() const
uint64_t GetAttributeValueAsUnsigned(const dw_attr_t attr, uint64_t fail_value) const
dw_offset_t GetOffset() const
DWARFBaseDIE(const DWARFUnit *cu, const DWARFDebugInfoEntry *die)
uint64_t GetAttributeValueAsAddress(const dw_attr_t attr, uint64_t fail_value) const
lldb::user_id_t GetID() const
DWARFDebugInfoEntry objects assume that they are living in one big vector and do pointer arithmetic o...
llvm::dwarf::Tag dw_tag_t
llvm::dwarf::Attribute dw_attr_t
bool operator!=(const DWARFBaseDIE &lhs, const DWARFBaseDIE &rhs)
bool operator==(const DWARFBaseDIE &lhs, const DWARFBaseDIE &rhs)
std::shared_ptr< lldb_private::Module > ModuleSP