Skip to content

Commit a033588

Browse files
bench_tools: support deserialization of criterion change
1 parent 48e1a8f commit a033588

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

crates/bench_tools/src/types/estimates.rs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,34 @@
11
use serde::Deserialize;
22

33
/// Criterion benchmark estimates.
4-
#[derive(Debug, Deserialize)]
4+
#[derive(Debug, Deserialize, Default)]
55
#[allow(dead_code)]
66
pub struct Estimates {
77
pub mean: Stat,
88
pub median: Stat,
9-
pub std_dev: Stat,
10-
pub median_abs_dev: Stat,
9+
#[serde(default)]
10+
pub std_dev: Option<Stat>,
11+
#[serde(default)]
12+
pub median_abs_dev: Option<Stat>,
13+
#[serde(default)]
1114
pub slope: Option<Stat>,
1215
}
1316

1417
/// Statistical estimate with confidence interval.
15-
#[derive(Debug, Deserialize)]
18+
#[derive(Debug, Deserialize, Default)]
1619
#[allow(dead_code)]
1720
pub struct Stat {
1821
pub point_estimate: f64,
22+
#[serde(default)]
1923
pub standard_error: f64,
2024
pub confidence_interval: ConfidenceInterval,
2125
}
2226

2327
/// Confidence interval bounds.
24-
#[derive(Debug, Deserialize)]
28+
#[derive(Debug, Deserialize, Default)]
2529
#[allow(dead_code)]
2630
pub struct ConfidenceInterval {
31+
#[serde(default)]
2732
pub confidence_level: f64,
2833
pub lower_bound: f64,
2934
pub upper_bound: f64,

0 commit comments

Comments
 (0)