pub struct PPartAllocation {
m: Matrix2D,
diagonal: PPart,
p_part: PPart,
}Expand description
The parts of a PPartMultiplier that involve heap allocation.
This lets us reuse the allocation across multiple different multipliers. Reusing the whole PPartMultiplier is finicky but doable due to lifetime issues. However, it appears to be less performant.
Fields§
§m: Matrix2D§diagonal: PPart§p_part: PPartImplementations§
Source§impl PPartAllocation
impl PPartAllocation
Sourcepub fn with_capacity(n: usize) -> Self
pub fn with_capacity(n: usize) -> Self
This creates a PPartAllocation with enough capacity to handle mulitiply elements with of total degree < 2^n - ε at p = 2.
pub fn with_local(f: impl FnOnce(Self) -> Self)
Trait Implementations§
Source§impl Default for PPartAllocation
impl Default for PPartAllocation
Source§fn default() -> PPartAllocation
fn default() -> PPartAllocation
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PPartAllocation
impl RefUnwindSafe for PPartAllocation
impl Send for PPartAllocation
impl Sync for PPartAllocation
impl Unpin for PPartAllocation
impl UnwindSafe for PPartAllocation
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