pub struct Debugger { /* private fields */ }Expand description
TUI Debugger for the i8051 emulator
Implementations§
Source§impl Debugger
impl Debugger
Sourcepub fn new(config: DebuggerConfig) -> Result<Self>
pub fn new(config: DebuggerConfig) -> Result<Self>
Create a new debugger with the given configuration
Sourcepub fn tracing_collector(&self) -> TracingCollector
pub fn tracing_collector(&self) -> TracingCollector
Get a clone of the tracing collector that can be used as a Layer
Sourcepub fn breakpoints(&self) -> &BTreeSet<u32>
pub fn breakpoints(&self) -> &BTreeSet<u32>
Get a reference to the breakpoints set
Sourcepub fn breakpoints_mut(&mut self) -> &mut BTreeSet<u32>
pub fn breakpoints_mut(&mut self) -> &mut BTreeSet<u32>
Get a mutable reference to the breakpoints set
Sourcepub fn debugger_state(&self) -> DebuggerState
pub fn debugger_state(&self) -> DebuggerState
Get the current debugger state
Sourcepub fn toggle_breakpoint(&mut self, addr: u32)
pub fn toggle_breakpoint(&mut self, addr: u32)
Toggle a breakpoint at the given address
Sourcepub fn handle_event(
&mut self,
event: Event,
cpu: &mut Cpu,
ctx: &mut impl CpuContext,
) -> bool
pub fn handle_event( &mut self, event: Event, cpu: &mut Cpu, ctx: &mut impl CpuContext, ) -> bool
Handle a crossterm event and update internal state Returns true if we should step the CPU, false otherwise
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for Debugger
impl !RefUnwindSafe for Debugger
impl Send for Debugger
impl !Sync for Debugger
impl Unpin for Debugger
impl UnwindSafe for Debugger
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more