pub struct BuiltCaps {
pub data_caps: Vec<(CapHash, Cap)>,
pub image_cap: Cap,
pub image_hash: CapHash,
pub cnode_cap: Cap,
pub cnode_hash: CapHash,
pub instance_cap: Cap,
pub instance_hash: CapHash,
pub endpoint_idx: u8,
}Expand description
Pre-built Cap graph for one (image, endpoint) bench cell.
Built once at warm-up via Self::for_image; the iter loop puts each
cap with its precomputed hash and invokes. The first iter pays the
full deep-clone cost (caps move into the Nub’s cache allocator);
subsequent iters hit the idempotent fast path (refcount bump only).
Fields§
§data_caps: Vec<(CapHash, Cap)>Cap::Data blobs for each pinned-slot Data + each initial-slot Data, paired with their content hashes.
image_cap: CapCap::Image referencing the data_caps above by hash.
image_hash: CapHash§cnode_cap: CapEmpty Cap::CNode (V1 has no per-instance slot bindings).
cnode_hash: CapHash§instance_cap: CapCap::Instance with the bench’s flat (ro, rw) overlay layout.
instance_hash: CapHash§endpoint_idx: u8Implementations§
Auto Trait Implementations§
impl Freeze for BuiltCaps
impl RefUnwindSafe for BuiltCaps
impl Send for BuiltCaps
impl Sync for BuiltCaps
impl Unpin for BuiltCaps
impl UnsafeUnpin for BuiltCaps
impl UnwindSafe for BuiltCaps
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.