pub trait BufferData<T>: DerefMut<Target = [T]> {
// Required method
fn truncate(&mut self, len: usize);
}Expand description
A mutable buffer of T that can be shrunk in place.
This is the backing store a binius_math::FieldBuffer needs in order to support
FieldBuffer::truncate, which shrinks the store to match a smaller log_len.
This trait is the shrinkable-store capability alone, and VecLike is that plus growth.
Three backings implement it:
Vec<T>andPoolVecboth shrink and grow, so both areVecLikeas well.&mut [T]only shrinks, by re-slicing, which is what slice-backed sumcheck halves need.