mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 10:57:35 +00:00
LibDebug: Propagate errors throughout DWARF parsing
Splitting this into a separate commit was an afterthought, so this does not yet feature any fallible operations.
This commit is contained in:
parent
e235c42e4d
commit
e62269650a
17 changed files with 243 additions and 204 deletions
|
@ -27,16 +27,16 @@ public:
|
|||
bool has_children() const { return m_has_children; }
|
||||
EntryTag tag() const { return m_tag; }
|
||||
|
||||
Optional<AttributeValue> get_attribute(Attribute const&) const;
|
||||
ErrorOr<Optional<AttributeValue>> get_attribute(Attribute const&) const;
|
||||
|
||||
void for_each_child(Function<void(DIE const& child)> callback) const;
|
||||
ErrorOr<void> for_each_child(Function<ErrorOr<void>(DIE const& child)> callback) const;
|
||||
|
||||
bool is_null() const { return m_tag == EntryTag::None; }
|
||||
CompilationUnit const& compilation_unit() const { return m_compilation_unit; }
|
||||
Optional<u32> parent_offset() const { return m_parent_offset; }
|
||||
|
||||
private:
|
||||
void rehydrate_from(u32 offset, Optional<u32> parent_offset);
|
||||
ErrorOr<void> rehydrate_from(u32 offset, Optional<u32> parent_offset);
|
||||
CompilationUnit const& m_compilation_unit;
|
||||
u32 m_offset { 0 };
|
||||
u32 m_data_offset { 0 };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue