kermit_bench/
benchmark.rs1use {super::downloader::DownloadSpec, std::path::Path};
2
3pub struct Task {
4 pub name: &'static str,
5 pub description: &'static str,
6 pub location: &'static str,
7}
8
9pub struct BenchmarkMetadata {
10 pub name: &'static str,
11 pub description: &'static str,
12 pub download_spec: DownloadSpec,
13 pub tasks: &'static [Task],
14}
15
16pub trait Benchmark {
17 fn metadata(&self) -> &BenchmarkMetadata;
18 fn load(&self, source: &Path, path: &Path) -> Result<(), Box<dyn std::error::Error>>;
19}