pub trait KernelInternalApi<M>{
    // Required methods
    fn kernel_get_system_state(&mut self) -> SystemState<'_, M>;
    fn kernel_get_current_depth(&self) -> usize;
    fn kernel_get_node_visibility(&self, node_id: &NodeId) -> NodeVisibility;
    fn kernel_read_bucket(
        &mut self,
        bucket_id: &NodeId
    ) -> Option<BucketSnapshot>;
    fn kernel_read_proof(&mut self, proof_id: &NodeId) -> Option<ProofSnapshot>;

    // Provided method
    fn kernel_get_system(&mut self) -> &mut M { ... }
}
Expand description

Internal API for kernel modules. No kernel state changes are expected as of a result of invoking such APIs, except updating returned references.

Required Methods§

source

fn kernel_get_system_state(&mut self) -> SystemState<'_, M>

source

fn kernel_get_current_depth(&self) -> usize

Gets the number of call frames that are currently in the call frame stack

source

fn kernel_get_node_visibility(&self, node_id: &NodeId) -> NodeVisibility

Returns the visibility of a node

source

fn kernel_read_bucket(&mut self, bucket_id: &NodeId) -> Option<BucketSnapshot>

source

fn kernel_read_proof(&mut self, proof_id: &NodeId) -> Option<ProofSnapshot>

Provided Methods§

source

fn kernel_get_system(&mut self) -> &mut M

Retrieves data associated with the kernel upstream layer (system)

Implementors§