Trait TableFiller

Source
pub trait TableFiller<P = PackedType<OptimalUnderlier, B128>>{
    type Event: Clone;

    // Required methods
    fn id(&self) -> TableId;
    fn fill<'a>(
        &'a self,
        rows: impl Iterator<Item = &'a Self::Event> + Clone,
        witness: &'a mut TableWitnessSegment<'_, P>,
    ) -> Result<()>;
}
Expand description

A struct that can populate segments of a table witness using row descriptors.

Required Associated Types§

Source

type Event: Clone

A struct that specifies the row contents.

Required Methods§

Source

fn id(&self) -> TableId

Returns the table ID.

Source

fn fill<'a>( &'a self, rows: impl Iterator<Item = &'a Self::Event> + Clone, witness: &'a mut TableWitnessSegment<'_, P>, ) -> Result<()>

Fill the table witness with data derived from the given rows.

§Preconditions
  • the number of elements in rows must equal witness.size()

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§

Source§

impl<P: PackedField<Scalar: TowerField>, Event: Clone> TableFiller<P> for ClosureFiller<'_, P, Event>

Source§

type Event = Event