pub trait Ring: Group + Mul<Self, Output = Self> { // Required method fn one() -> Self; }
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".