pub trait Benchmark<T>: Send + Sync {
    // Required methods
    fn run<'life0, 'life1, 'async_trait>(
        &'life0 self,
        fs: &'life1 mut T,
    ) -> Pin<Box<dyn Future<Output = Vec<OperationDuration>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
    fn name(&self) -> String;
}Expand description
A trait representing a single benchmark.