pub struct Breakpoint {
pub id: BreakpointId,
pub container_idx: u32,
pub offset: usize,
pub name: String,
pub enabled: bool,
}Expand description
One breakpoint: an unconditional halt at a (container_idx, offset)
bytecode position, checked before that instruction executes.
v1 breakpoints are position-only (no source expression condition) —
scoped this way deliberately: an ink-expression conditional
breakpoint would need to evaluate an expression inside the paused
frame, which is exactly the “evaluate expression in frame” facility
crate::Speculation exists for for a later slice of this seam, not
re-derived here. A run/debug_run that never reaches an armed
breakpoint is still bounded — that’s what DEFAULT_DEBUG_BUDGET is
for.
Fields§
§id: BreakpointId§container_idx: u32§offset: usize§name: StringAuthor-facing name/label, surfaced in
DebugStopReason::Breakpoint and in
RuntimeError::DebugBudgetExceeded
when a conditional evaluation (a future slice) burns the debug
budget on this breakpoint specifically. Never empty in practice —
BreakpointSet::insert defaults it to the position if the caller
passes an empty string.
enabled: boolTrait Implementations§
Source§impl Clone for Breakpoint
impl Clone for Breakpoint
Source§fn clone(&self) -> Breakpoint
fn clone(&self) -> Breakpoint
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more