Skip to main content

Module debugger

Module debugger 

Source
Expand description

Copy-out debugger snapshots (playground debugger design §5).

Every debugger; statement executed by the GC VM materializes one DebuggerHit: call frames, named slots, and a bounded projection of the current heap. A hit holds only strings, integers, and plain vectors — never a GcRef — so recording cannot root objects or change later GC behavior.

Values are projected by teaching semantics, not by allocation reality (design §2.4): Integer/Boolean/Null/Builtin are inlined into slots and parent members with heap_id: None; String/Array/Hash/Closure/Class/ Instance/BoundMethod/Error become heap nodes referenced as ref #id; CompiledFunction and VM infrastructure are hidden entirely and are not counted as omitted.

Structs§

CaptureView
DebuggerHit
FrameView
HeapEdgeView
HeapMemberView
HeapObjectView
HeapView
SlotView
StackSlotView
ValueView

Constants§

MAX_DEBUGGER_DISPLAY_CHARS
MAX_DEBUGGER_EDGES
MAX_DEBUGGER_HITS
MAX_DEBUGGER_MEMBERS
MAX_DEBUGGER_OBJECTS
MAX_DEBUGGER_SUMMARY_DEPTH