pub struct FrameInfo {
pub function_id: Option<u16>,
pub function_name: String,
pub blob_hash: Option<[u8; 32]>,
pub local_ip: usize,
pub locals: Vec<KindedSlot>,
pub upvalues: Option<Vec<KindedSlot>>,
pub args: Vec<KindedSlot>,
}Expand description
Information about a single VM call frame, captured at a point in time.
Refcount discipline via KindedSlot. Per ADR-006 §2.7 the
locals / upvalues / args vectors hold KindedSlots — the
GENERIC_CARRIER vector form. KindedSlot’s explicit Drop and
Clone impls dispatch on NativeKind to retire / bump heap
refcounts, so Vec<KindedSlot> push / pop / clone preserve the
WB2.4 / WB2.5 retain-on-read invariant by construction. The manual
Clone / Drop impls calling vw_clone / vw_drop_slice that
pre-bulldozer code carried are no longer needed.
Fields§
§function_id: Option<u16>§function_name: String§blob_hash: Option<[u8; 32]>§local_ip: usize§locals: Vec<KindedSlot>§upvalues: Option<Vec<KindedSlot>>§args: Vec<KindedSlot>Trait Implementations§
Auto Trait Implementations§
impl Freeze for FrameInfo
impl RefUnwindSafe for FrameInfo
impl Send for FrameInfo
impl Sync for FrameInfo
impl Unpin for FrameInfo
impl UnsafeUnpin for FrameInfo
impl UnwindSafe for FrameInfo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more