Trait risc0_zkp::hal::Buffer

source ·
pub trait Buffer<T>: Clone {
    // Required methods
    fn name(&self) -> &'static str;
    fn size(&self) -> usize;
    fn slice(&self, offset: usize, size: usize) -> Self;
    fn get_at(&self, idx: usize) -> T;
    fn view<F: FnOnce(&[T])>(&self, f: F);
    fn view_mut<F: FnOnce(&mut [T])>(&self, f: F);
    fn to_vec(&self) -> Vec<T>;
}
Available on crate feature prove only.

Required Methods§

source

fn name(&self) -> &'static str

source

fn size(&self) -> usize

source

fn slice(&self, offset: usize, size: usize) -> Self

source

fn get_at(&self, idx: usize) -> T

source

fn view<F: FnOnce(&[T])>(&self, f: F)

source

fn view_mut<F: FnOnce(&mut [T])>(&self, f: F)

source

fn to_vec(&self) -> Vec<T>

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T, L, R> Buffer<T> for BufferImpl<T, L, R>
where T: Clone + Debug + PartialEq, L: Buffer<T>, R: Buffer<T>,

source§

impl<T: Clone> Buffer<T> for CpuBuffer<T>