#[cfg(any(feature = "alloc", test))]
mod alloc;
#[cfg(any(not(feature = "alloc"), test))]
mod no_alloc;
cfg_if::cfg_if! {
if #[cfg(feature = "alloc")] {
pub(crate) use self::alloc::SystemState;
} else {
pub(crate) use no_alloc::SystemState;
}
}
pub(crate) trait SystemStateTrait {
fn dump_monitor_commands(&self, out: &mut dyn core::fmt::Write);
fn handle_monitor_command(
&self,
command: &str,
args: &mut core::str::SplitWhitespace<'_>,
out: &mut dyn core::fmt::Write,
) -> bool;
fn add_module(&mut self, name: &str, base: usize, size: usize);
fn check_module_breakpoints(&self, name: &str) -> bool;
fn add_module_breakpoint(&mut self, name: &str);
fn set_module_breakpoint_all(&mut self);
fn clear_module_breakpoints(&mut self);
fn dump_modules(&self, out: &mut dyn core::fmt::Write, start: usize, count: usize) -> usize;
fn dump_module_breakpoints(&self, out: &mut dyn core::fmt::Write);
}