Shapeable

Trait Shapeable 

Source
pub trait Shapeable {
    // Required methods
    fn kind(&self) -> ShardKind;
    fn shard(&self) -> u32;
    fn log2_shard_size(&self) -> usize;
    fn debug_stats(&self) -> HashMap<String, usize>;
    fn core_heights(&self) -> Vec<(RiscvAirId, usize)>;
    fn memory_heights(&self) -> Vec<(RiscvAirId, usize)>;
    fn precompile_heights(
        &self,
    ) -> impl Iterator<Item = (RiscvAirId, (usize, usize, usize))>;
}

Required Methods§

Source

fn kind(&self) -> ShardKind

Source

fn shard(&self) -> u32

Source

fn log2_shard_size(&self) -> usize

Source

fn debug_stats(&self) -> HashMap<String, usize>

Source

fn core_heights(&self) -> Vec<(RiscvAirId, usize)>

Source

fn memory_heights(&self) -> Vec<(RiscvAirId, usize)>

Source

fn precompile_heights( &self, ) -> impl Iterator<Item = (RiscvAirId, (usize, usize, usize))>

TODO. Returns all precompile events, assuming there is only one kind in Self. The tuple is of the form (height, (num_memory_local_events, num_global_events))

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Shapeable for ExecutionRecord

Implementors§