pub trait ButtonExt { // Required method fn button(self) -> Button; }
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".