Skip to main content

Crate gc

Crate gc 

Source

Re-exports§

pub use debugger::CaptureView;
pub use debugger::DebuggerHit;
pub use debugger::FrameView;
pub use debugger::HeapEdgeView;
pub use debugger::HeapMemberView;
pub use debugger::HeapObjectView;
pub use debugger::HeapView;
pub use debugger::SlotView;
pub use debugger::StackSlotView;
pub use debugger::ValueView;
pub use debugger::MAX_DEBUGGER_DISPLAY_CHARS;
pub use debugger::MAX_DEBUGGER_EDGES;
pub use debugger::MAX_DEBUGGER_HITS;
pub use debugger::MAX_DEBUGGER_MEMBERS;
pub use debugger::MAX_DEBUGGER_OBJECTS;
pub use debugger::MAX_DEBUGGER_SUMMARY_DEPTH;
pub use frame::Frame;
pub use header::GcId;
pub use header::GcObjectHeader;
pub use header::GcObjectType;
pub use header::GcPhase;
pub use header::RefCountHeader;
pub use header::RefCountId;
pub use heap::GcHeap;
pub use heap::GcRef;
pub use malloc::MallocState;
pub use malloc::DEFAULT_GC_THRESHOLD;
pub use malloc::MALLOC_OVERHEAD;
pub use report::EdgeRelation;
pub use report::FinalFate;
pub use report::FreeCycleStats;
pub use report::GcCollectionReport;
pub use report::GcObjectSummary;
pub use report::GcPhaseStats;
pub use report::GcStatsBundle;
pub use report::GlobalRoot;
pub use report::HashKeyKind;
pub use report::HeapSnapshot;
pub use report::ObjectDecision;
pub use report::RestorationWitness;
pub use report::ScanStats;
pub use report::TrialDecision;
pub use report::TrialDeletionStats;
pub use report::ValueKindCounts;
pub use report::VisitedEdge;
pub use runner::compile_source;
pub use runner::run_bytecode;
pub use runner::run_bytecode_with_output;
pub use runtime::GcObject;
pub use runtime::GcRuntime;
pub use runtime::MarkFunc;
pub use value::export_object;
pub use value::import_object;
pub use value::try_export_object;
pub use value::value_to_string;
pub use value::GcClosure;
pub use value::Value;
pub use value::ValueKind;
pub use vm::GcClassifiedRuntimeError;
pub use vm::GcRuntimeError;
pub use vm::GcRuntimeErrorKind;
pub use vm::GcVM;
pub use vm::DEFAULT_INSTRUCTION_BUDGET;

Modules§

debugger
Copy-out debugger snapshots (playground debugger design §5).
frame
header
heap
list
malloc
report
runner
Shared execution path for the monkey-gc CLI (design doc §7).
runtime
value
vm

Structs§

GcClassifiedRunError
Report failure with a stable, machine-readable error category.
GcRunError
Parse, compile, or runtime failure returned by the established report API.
GcRunSuccess

Enums§

GcDebuggerRunOutcome
Outcome of a debugger run. Unlike the report API this is not a Result: hits recorded before a runtime failure are part of the story the debugger tells, so the error arm carries them too.
GcRunStage

Functions§

compile
Compile Monkey source using the existing bytecode compiler.
eval
Compile and execute on the GC-backed VM.
eval_source
Parse, compile, and execute Monkey source.
run_source_with_debugger_classified
Parse, compile, and execute Monkey source, recording a snapshot at every debugger; statement. GC stays disabled (threshold usize::MAX) so heap ids remain stable across the hits of one run.
run_source_with_report
Parse, compile, execute with deterministic GC settings, then collect cycles.
run_source_with_report_classified
Parse, compile, and execute Monkey source while classifying failures at their raise sites.