openvm_circuit_primitives

Trait TraceSubRowGenerator

Source
pub trait TraceSubRowGenerator<F> {
    type TraceContext<'a>
       where Self: 'a;
    type ColsMut<'a>
       where Self: 'a;

    // Required method
    fn generate_subrow<'a>(
        &'a self,
        ctx: Self::TraceContext<'a>,
        sub_row: Self::ColsMut<'a>,
    );
}
Expand description

This is a helper for generation of the trace on a subset of the columns in a single row of the trace matrix.

Required Associated Types§

Source

type TraceContext<'a> where Self: 'a

The minimal amount of information needed to generate the sub-row of the trace matrix. This type has a lifetime so other context, such as references to other chips, can be provided.

Source

type ColsMut<'a> where Self: 'a

The type for the columns to mutate. Often this can be &'a mut Cols<F> if Cols is on the stack. For structs that use the heap, this should be a struct that contains mutable slices.

Required Methods§

Source

fn generate_subrow<'a>( &'a self, ctx: Self::TraceContext<'a>, sub_row: Self::ColsMut<'a>, )

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.

Implementors§