pub struct DebugProgram {
pub info: EthdebugInfo,
pub resources: Value,
pub source_contents: BTreeMap<u64, String>,
pub legacy: bool,
pub storage_layout: Option<StorageLayout>,
pub missing_sources: Vec<String>,
}Expand description
One contract’s debug information as loaded from its artifacts.
Fields§
§info: EthdebugInfo§resources: ValueThe ETHDebug resources record: the compilation, types, and pointers.
source_contents: BTreeMap<u64, String>Source text by source id, for every source that could be read.
legacy: boolTrue when the program came from a legacy srcmap rather than ETHDebug.
storage_layout: Option<StorageLayout>The contract’s storage layout, when it was compiled with --storage-layout.
missing_sources: Vec<String>Sources the artifact names that could not be read, so a frontend can say why its lines are missing instead of degrading to an opcode view without a word.
Implementations§
Source§impl DebugProgram
impl DebugProgram
Sourcepub const fn code_generator(&self) -> CodeGenerator
pub const fn code_generator(&self) -> CodeGenerator
The code generator the program came from. A legacy srcmap is taken to come from
the legacy pipeline, which is the only one that emits nothing else; ETHDebug comes
from solc’s via-IR pipeline or from a compiler built on IR.
Trait Implementations§
Source§impl Clone for DebugProgram
impl Clone for DebugProgram
Source§fn clone(&self) -> DebugProgram
fn clone(&self) -> DebugProgram
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DebugProgram
impl Debug for DebugProgram
impl Eq for DebugProgram
Source§impl PartialEq for DebugProgram
impl PartialEq for DebugProgram
impl StructuralPartialEq for DebugProgram
Auto Trait Implementations§
impl Freeze for DebugProgram
impl RefUnwindSafe for DebugProgram
impl Send for DebugProgram
impl Sync for DebugProgram
impl Unpin for DebugProgram
impl UnsafeUnpin for DebugProgram
impl UnwindSafe for DebugProgram
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more