pub struct VerifiedMultivector<const P: usize, const Q: usize, const R: usize> {
pub inner: Multivector<P, Q, R>,
/* private fields */
}Expand description
Verified multivector with signature information preserved
Fields§
§inner: Multivector<P, Q, R>Implementations§
Source§impl<const P: usize, const Q: usize, const R: usize> VerifiedMultivector<P, Q, R>
impl<const P: usize, const Q: usize, const R: usize> VerifiedMultivector<P, Q, R>
Sourcepub fn new(inner: Multivector<P, Q, R>) -> Self
pub fn new(inner: Multivector<P, Q, R>) -> Self
Create verified multivector with compile-time signature checking
Sourcepub fn into_inner(self) -> Multivector<P, Q, R>
pub fn into_inner(self) -> Multivector<P, Q, R>
Extract inner multivector for GPU operations (loses verification)
Sourcepub fn inner(&self) -> &Multivector<P, Q, R>
pub fn inner(&self) -> &Multivector<P, Q, R>
Get reference to inner multivector
Sourcepub fn verify_invariants(&self) -> Result<(), GpuVerificationError>
pub fn verify_invariants(&self) -> Result<(), GpuVerificationError>
Verify mathematical invariants
Trait Implementations§
Auto Trait Implementations§
impl<const P: usize, const Q: usize, const R: usize> Freeze for VerifiedMultivector<P, Q, R>
impl<const P: usize, const Q: usize, const R: usize> RefUnwindSafe for VerifiedMultivector<P, Q, R>
impl<const P: usize, const Q: usize, const R: usize> Send for VerifiedMultivector<P, Q, R>
impl<const P: usize, const Q: usize, const R: usize> Sync for VerifiedMultivector<P, Q, R>
impl<const P: usize, const Q: usize, const R: usize> Unpin for VerifiedMultivector<P, Q, R>
impl<const P: usize, const Q: usize, const R: usize> UnwindSafe for VerifiedMultivector<P, Q, R>
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<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.