pub struct StaticIndex {
pub dense: DenseMask,
pub sparse: TransitionMatrix,
pub num_constraints: usize,
}Expand description
Combined STATIC index: dense mask for the first d layers,
sparse CSR matrix for all deeper layers.
Fields§
§dense: DenseMaskBit-packed dense mask covering the first d trie levels.
sparse: TransitionMatrixCSR transition matrix for levels d..L.
num_constraints: usizeTotal number of constraints |C|.
Implementations§
Source§impl StaticIndex
impl StaticIndex
pub fn new( dense: DenseMask, sparse: TransitionMatrix, num_constraints: usize, ) -> Self
Sourcepub fn check_invariants(&self) -> Result<(), String>
pub fn check_invariants(&self) -> Result<(), String>
Quick sanity check delegating to both sub-structures.
Trait Implementations§
Source§impl Clone for StaticIndex
impl Clone for StaticIndex
Source§fn clone(&self) -> StaticIndex
fn clone(&self) -> StaticIndex
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StaticIndex
impl Debug for StaticIndex
Auto Trait Implementations§
impl Freeze for StaticIndex
impl RefUnwindSafe for StaticIndex
impl Send for StaticIndex
impl Sync for StaticIndex
impl Unpin for StaticIndex
impl UnsafeUnpin for StaticIndex
impl UnwindSafe for StaticIndex
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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