pub enum ColumnRef {
Current(Column),
Next(Column),
}Expand description
A row-relative column reference.
AIR constraint expressions use ColumnRef to address
values in the current row or the next row.
This is the key distinction from plonkish-cat’s absolute
Wire references.
§Examples
use machine_cat::{Column, ColumnRef};
let curr = ColumnRef::Current(Column::new(0));
let next = ColumnRef::Next(Column::new(1));
assert_eq!(curr.column().index(), 0);
assert_eq!(next.column().index(), 1);Variants§
Current(Column)
The value of a column in the current row.
Next(Column)
The value of a column in the next row.
Implementations§
Trait Implementations§
impl Copy for ColumnRef
impl Eq for ColumnRef
impl StructuralPartialEq for ColumnRef
Auto Trait Implementations§
impl Freeze for ColumnRef
impl RefUnwindSafe for ColumnRef
impl Send for ColumnRef
impl Sync for ColumnRef
impl Unpin for ColumnRef
impl UnsafeUnpin for ColumnRef
impl UnwindSafe for ColumnRef
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