You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The EntryRef methods in dwarf_entry.rs duplicate some code since the various input sources provide different DWARF function and variable entry attributes. We could deduplicate quite a bit by creating an internal IR for DWARF function and variable entries.
Essentially these structs would have Option<T> fields for the entry attributes. We may possibly want to use a different enum with three variants to distinguish between input sources that cannot provide a certain attribute and those that can, but did not provide it. Then the parsed input data would be transformed into this IR (instead of the current AnvillData, GhidraData, etc...) and we could use a single function to update the DWARF function entries and another for variables. This wouldn't change the behavior of this tool, but would be good to have before adding any more input sources.
The text was updated successfully, but these errors were encountered:
The
EntryRef
methods in dwarf_entry.rs duplicate some code since the various input sources provide different DWARF function and variable entry attributes. We could deduplicate quite a bit by creating an internal IR for DWARF function and variable entries.Essentially these structs would have
Option<T>
fields for the entry attributes. We may possibly want to use a different enum with three variants to distinguish between input sources that cannot provide a certain attribute and those that can, but did not provide it. Then the parsed input data would be transformed into this IR (instead of the currentAnvillData
,GhidraData
, etc...) and we could use a single function to update the DWARF function entries and another for variables. This wouldn't change the behavior of this tool, but would be good to have before adding any more input sources.The text was updated successfully, but these errors were encountered: