pub unsafe trait Conjugate: Entity {
type Conj: Entity + Conjugate<Conj = Self, Canonical = Self::Canonical>;
type Canonical: Entity + Conjugate<Canonical = Self::Canonical>;
const IS_CANONICAL: bool = true;
// Required method
fn canonicalize(self) -> Self::Canonical;
}Expand description
Trait for types that may be implicitly conjugated.
§Safety
The associated types and functions must fulfill their respective contracts.
Provided Associated Constants§
const IS_CANONICAL: bool = true
Required Associated Types§
Required Methods§
Sourcefn canonicalize(self) -> Self::Canonical
fn canonicalize(self) -> Self::Canonical
Performs the implicit conjugation operation on the given value, returning the canonical form.
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.