pub trait RingNormalize {
// Required methods
fn leading_unit(&self) -> Self;
fn normalize_mut(&mut self);
// Provided methods
fn into_normalize(self) -> Self
where Self: Sized { ... }
fn normalize(&self) -> Self
where Self: Clone { ... }
fn is_similar(&self, other: &Self) -> bool
where Self: Clone + Eq { ... }
}
Expand description
Normarize ring element
abs(a)
in $\mathbb{Z}
$.
a/lc(a)
in $R[x]
$ (lc(x)
is leading coefficent of x).
Required Methods§
fn leading_unit(&self) -> Self
fn normalize_mut(&mut self)
Provided Methods§
fn into_normalize(self) -> Selfwhere
Self: Sized,
fn normalize(&self) -> Selfwhere
Self: Clone,
fn is_similar(&self, other: &Self) -> bool
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.