pub fn slot_to_serializable(
bits: u64,
kind: NativeKind,
_store: &SnapshotStore,
) -> Result<SerializableVMValue, String>Expand description
Project a (bits, kind) slot pair into its SerializableVMValue arm.
Per ADR-006 §2.7.5.1: scalar kinds project from raw u64 bits via the
canonical sign-extension / bitcast rules; heap kinds (Ptr(HeapKind::*))
recover their typed Arc<T> via ValueSlot::from_raw(bits).as_heap_value()
HeapValue::*match, then serialize per-arm. Heap kinds whose deep payload requires theArc<HeapValue>generic serializer shape (§2.7.5.1 forbidden) project to their opaque-stub arm instead.
The _store parameter is reserved for chunked-blob arms that
off-line large payloads (DataTable IPC, TypedArray binary). Scalar
- simple-heap arms do not touch the store.