Trait HeapManager
Source pub trait HeapManager {
Show 15 methods
// Required methods
fn get(&self, handle: HeapHandleId) -> Option<&HeapEntry>;
fn get_mut(&mut self, handle: HeapHandleId) -> Option<&mut HeapEntry>;
fn set_object_property(
&mut self,
handle: HeapHandleId,
key: String,
value: Value,
);
fn get_object_property(
&self,
handle: HeapHandleId,
key: &str,
) -> Option<&Value>;
fn push_array_element(&mut self, handle: HeapHandleId, value: Value);
fn get_array_element(
&self,
handle: HeapHandleId,
idx: ArraySize,
) -> Option<&Value>;
fn set_array_element(
&mut self,
handle: HeapHandleId,
idx: ArraySize,
value: Value,
);
fn remove_object_property(&mut self, handle: HeapHandleId, key: &str);
fn has_object_property(&self, handle: HeapHandleId, key: &str) -> bool;
fn size(&self) -> usize;
fn is_empty(&self) -> bool;
fn clear(&mut self);
fn get_stats(&self) -> HeapStats;
fn get_metrics(&self) -> &HeapMetrics;
fn collect_garbage(&mut self, roots: &[HeapHandleId]) -> usize;
}