pub struct TableBuilder<'a, F: TowerField = B128> { /* private fields */ }
Implementations§
Source§impl<'a, F: TowerField> TableBuilder<'a, F>
impl<'a, F: TowerField> TableBuilder<'a, F>
pub fn new(table: &'a mut Table<F>) -> Self
pub fn require_power_of_two_size(&mut self)
pub fn with_namespace( &mut self, namespace: impl ToString, ) -> TableBuilder<'_, F>
pub fn id(&self) -> TableId
pub fn add_committed<FSub, const VALUES_PER_ROW: usize>(
&mut self,
name: impl ToString,
) -> Col<FSub, VALUES_PER_ROW>where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn add_committed_multiple<FSub, const VALUES_PER_ROW: usize, const N: usize>(
&mut self,
name: impl ToString,
) -> [Col<FSub, VALUES_PER_ROW>; N]where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn add_shifted<FSub, const VALUES_PER_ROW: usize>(
&mut self,
name: impl ToString,
col: Col<FSub, VALUES_PER_ROW>,
log_block_size: usize,
offset: usize,
variant: ShiftVariant,
) -> Col<FSub, VALUES_PER_ROW>where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn add_packed<FSubSub, const VALUES_PER_ROW_SUB: usize, FSub, const VALUES_PER_ROW: usize>( &mut self, name: impl ToString, col: Col<FSubSub, VALUES_PER_ROW_SUB>, ) -> Col<FSub, VALUES_PER_ROW>
pub fn add_computed<FSub, const V: usize>(
&mut self,
name: impl ToString,
expr: Expr<FSub, V>,
) -> Col<FSub, V>where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn add_selected<FSub, const VALUES_PER_ROW: usize>(
&mut self,
name: impl ToString,
col: Col<FSub, VALUES_PER_ROW>,
index: usize,
) -> Col<FSub, 1>where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn add_selected_block<FSub, const VALUES_PER_ROW: usize, const NEW_VALUES_PER_ROW: usize>(
&mut self,
name: impl ToString,
col: Col<FSub, VALUES_PER_ROW>,
index: usize,
) -> Col<FSub, NEW_VALUES_PER_ROW>where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn add_constant<FSub, const VALUES_PER_ROW: usize>(
&mut self,
name: impl ToString,
constants: [FSub; VALUES_PER_ROW],
) -> Col<FSub, VALUES_PER_ROW>where
FSub: TowerField,
F: ExtensionField<FSub>,
OptimalUnderlier: PackScalar<FSub> + PackScalar<F>,
pub fn assert_zero<FSub, const VALUES_PER_ROW: usize>(
&mut self,
name: impl ToString,
expr: Expr<FSub, VALUES_PER_ROW>,
)where
FSub: TowerField,
F: ExtensionField<FSub>,
Sourcepub fn assert_nonzero<FSub, const V: usize>(&mut self, expr: Col<FSub, V>)where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn assert_nonzero<FSub, const V: usize>(&mut self, expr: Col<FSub, V>)where
FSub: TowerField,
F: ExtensionField<FSub>,
Constrains that all values contained in this column are non-zero.
pub fn pull<FSub>(
&mut self,
channel: ChannelId,
cols: impl IntoIterator<Item = Col<FSub>>,
)where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn push<FSub>(
&mut self,
channel: ChannelId,
cols: impl IntoIterator<Item = Col<FSub>>,
)where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn pull_with_opts<FSub>(
&mut self,
channel: ChannelId,
cols: impl IntoIterator<Item = Col<FSub>>,
opts: FlushOpts,
)where
FSub: TowerField,
F: ExtensionField<FSub>,
pub fn push_with_opts<FSub>(
&mut self,
channel: ChannelId,
cols: impl IntoIterator<Item = Col<FSub>>,
opts: FlushOpts,
)where
FSub: TowerField,
F: ExtensionField<FSub>,
Trait Implementations§
Auto Trait Implementations§
impl<'a, F> Freeze for TableBuilder<'a, F>
impl<'a, F = BinaryField128b> !RefUnwindSafe for TableBuilder<'a, F>
impl<'a, F> Send for TableBuilder<'a, F>
impl<'a, F> Sync for TableBuilder<'a, F>
impl<'a, F> Unpin for TableBuilder<'a, F>
impl<'a, F = BinaryField128b> !UnwindSafe for TableBuilder<'a, F>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more