pub struct BootCapabilitySet { /* private fields */ }Expand description
The complete set of initial capabilities for the root task.
This struct describes all capabilities that should be created during kernel boot and granted to the root task.
Implementations§
Source§impl BootCapabilitySet
impl BootCapabilitySet
Sourcepub const fn new() -> BootCapabilitySet
pub const fn new() -> BootCapabilitySet
Creates an empty boot capability set.
Sourcepub fn minimal(root_task_id: u64) -> BootCapabilitySet
pub fn minimal(root_task_id: u64) -> BootCapabilitySet
Creates a minimal boot set with essential capabilities.
Sourcepub fn full(
root_task_id: u64,
memory_start: u64,
memory_size: u64,
rvf_object_id: u64,
rvf_hash: u64,
) -> BootCapabilitySet
pub fn full( root_task_id: u64, memory_start: u64, memory_size: u64, rvf_object_id: u64, rvf_hash: u64, ) -> BootCapabilitySet
Creates a full boot set with all standard capabilities.
Sourcepub fn add_memory_region(&mut self, object_id: u64, start_addr: u64) -> bool
pub fn add_memory_region(&mut self, object_id: u64, start_addr: u64) -> bool
Adds a memory region capability.
Sourcepub fn add_readonly_region(&mut self, object_id: u64, start_addr: u64) -> bool
pub fn add_readonly_region(&mut self, object_id: u64, start_addr: u64) -> bool
Adds a read-only memory region (e.g., ROM).
Sourcepub fn set_rvf_package(&mut self, object_id: u64, package_hash: u64)
pub fn set_rvf_package(&mut self, object_id: u64, package_hash: u64)
Sets the RVF package capability.
Sourcepub fn set_witness_log(&mut self, object_id: u64)
pub fn set_witness_log(&mut self, object_id: u64)
Sets the witness log capability.
Sourcepub fn set_interrupt_queue(&mut self, object_id: u64, irq_mask: u64)
pub fn set_interrupt_queue(&mut self, object_id: u64, irq_mask: u64)
Sets the interrupt queue capability.
Sourcepub fn set_root_task(&mut self, object_id: u64)
pub fn set_root_task(&mut self, object_id: u64)
Sets the root task capability.
Sourcepub fn set_vector_store(&mut self, object_id: u64, dimension: u64)
pub fn set_vector_store(&mut self, object_id: u64, dimension: u64)
Sets the vector store capability.
Sourcepub fn set_proof_graph(&mut self, object_id: u64)
pub fn set_proof_graph(&mut self, object_id: u64)
Sets the proof graph capability.
Sourcepub const fn memory_region_count(&self) -> usize
pub const fn memory_region_count(&self) -> usize
Returns the number of memory regions.
Sourcepub fn total_count(&self) -> usize
pub fn total_count(&self) -> usize
Returns the total number of capabilities in the set.
Sourcepub fn iter(&self) -> impl Iterator<Item = &InitialCapability>
pub fn iter(&self) -> impl Iterator<Item = &InitialCapability>
Returns an iterator over all capabilities in the set.
Trait Implementations§
Source§impl Clone for BootCapabilitySet
impl Clone for BootCapabilitySet
Source§fn clone(&self) -> BootCapabilitySet
fn clone(&self) -> BootCapabilitySet
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BootCapabilitySet
impl Debug for BootCapabilitySet
Source§impl Default for BootCapabilitySet
impl Default for BootCapabilitySet
Source§fn default() -> BootCapabilitySet
fn default() -> BootCapabilitySet
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for BootCapabilitySet
impl RefUnwindSafe for BootCapabilitySet
impl Send for BootCapabilitySet
impl Sync for BootCapabilitySet
impl Unpin for BootCapabilitySet
impl UnsafeUnpin for BootCapabilitySet
impl UnwindSafe for BootCapabilitySet
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