pub trait Runner {
// Required methods
fn gen(input: ArcStr) -> Self
where Self: Sized;
fn run(&self) -> Box<dyn Display>;
fn bench(&self, black_box: fn(&dyn Display));
// Provided methods
fn try_gen(input: ArcStr) -> Result<Self, Box<dyn Error>>
where Self: Sized { ... }
fn try_run(&self) -> Result<Box<dyn Display>, Box<dyn Error>> { ... }
}Required Methods§
fn gen(input: ArcStr) -> Selfwhere
Self: Sized,
fn run(&self) -> Box<dyn Display>
fn bench(&self, black_box: fn(&dyn Display))
Provided Methods§
fn try_gen(input: ArcStr) -> Result<Self, Box<dyn Error>>where
Self: Sized,
fn try_run(&self) -> Result<Box<dyn Display>, Box<dyn Error>>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".