9#ifndef LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DIEREF_H
10#define LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DIEREF_H
35 assert(this->
file_index() == file_index &&
"File Index is out of range?");
116 static constexpr uint64_t
131static_assert(
sizeof(
DIERef) == 8);
136template<>
struct format_provider<
DIERef> {
137 static void format(
const DIERef &ref, raw_ostream &OS, StringRef Style);
std::vector< DIERef > DIEArray
Identifies a DWARF debug info entry within a given Module.
static constexpr uint64_t k_file_index_bit_size
DIERef(lldb::user_id_t uid)
static constexpr uint64_t k_file_index_valid_bit
dw_offset_t m_file_index_valid
static constexpr uint64_t k_file_index_mask
bool operator==(const DIERef &rhs) const
std::optional< uint32_t > file_index() const
bool operator<(DIERef other) const
lldb::user_id_t get_id() const
static std::optional< DIERef > Decode(const lldb_private::DataExtractor &data, lldb::offset_t *offset_ptr)
Decode a serialized version of this object from data.
void Encode(lldb_private::DataEncoder &encoder) const
Encode this object into a data encoder object.
DIERef(std::optional< uint32_t > file_index, Section section, dw_offset_t die_offset)
bool operator!=(const DIERef &rhs) const
static constexpr uint64_t k_die_offset_bit_size
dw_offset_t die_offset() const
static constexpr uint64_t k_die_offset_mask
static constexpr uint64_t k_section_bit
An binary data encoding class.
#define DW_DIE_OFFSET_MAX_BITSIZE