pub struct VanishingPoints { /* private fields */ }Expand description
Used to keep track of the points at which a polynomial needs to vanish.
This takes care of subtle details like padding and bit ordering.
This struct is associated with a particular size, which is a power of two, and thus a particular root of unity.
Implementations§
Source§impl VanishingPoints
impl VanishingPoints
Sourcepub fn new(lg_size: u32) -> Self
pub fn new(lg_size: u32) -> Self
This will have size 2^lg_size, and vanish everywhere.
Be aware that this means all points are initially marked as vanishing.
Sourcepub fn all_non_vanishing(lg_size: u32) -> Self
pub fn all_non_vanishing(lg_size: u32) -> Self
This will have size 2^lg_size, and vanish nowhere.
pub const fn lg_size(&self) -> u32
Sourcepub fn set_non_vanishing(&mut self, index: u64)
pub fn set_non_vanishing(&mut self, index: u64)
Set the root w^index to not vanish.
cf. set;
pub fn get(&self, index: u64) -> bool
pub fn count_non_vanishing(&self) -> u64
Trait Implementations§
Source§impl Debug for VanishingPoints
impl Debug for VanishingPoints
Source§impl PartialEq for VanishingPoints
impl PartialEq for VanishingPoints
impl StructuralPartialEq for VanishingPoints
Auto Trait Implementations§
impl Freeze for VanishingPoints
impl RefUnwindSafe for VanishingPoints
impl Send for VanishingPoints
impl Sync for VanishingPoints
impl Unpin for VanishingPoints
impl UnsafeUnpin for VanishingPoints
impl UnwindSafe for VanishingPoints
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> 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