pub struct MetricsSummary<K: Hash + Eq = EventKind>(/* private fields */);Available on crate feature
runner only.Expand description
The MetricsSummary contains all differences between two tool run segments
Implementations§
Source§impl<K> MetricsSummary<K>
impl<K> MetricsSummary<K>
Sourcepub fn new(metrics: EitherOrBoth<Metrics<K>>) -> Self
pub fn new(metrics: EitherOrBoth<Metrics<K>>) -> Self
Sourcepub fn diff_by_kind(&self, metric_kind: &K) -> Option<&MetricsDiff>
pub fn diff_by_kind(&self, metric_kind: &K) -> Option<&MetricsDiff>
Try to return a MetricsDiff for the specified MetricKind
Sourcepub fn all_diffs(&self) -> impl Iterator<Item = (&K, &MetricsDiff)>
pub fn all_diffs(&self) -> impl Iterator<Item = (&K, &MetricsDiff)>
Return an iterator over all MetricsDiffs
Sourcepub fn extract_costs(&self) -> EitherOrBoth<Metrics<K>>
pub fn extract_costs(&self) -> EitherOrBoth<Metrics<K>>
Extract the Metrics from this summary
This is the exact reverse operation to MetricsSummary::new
Sourcepub fn add(&mut self, other: &Self)
pub fn add(&mut self, other: &Self)
Sum up another MetricsSummary with this one
If a MetricsDiff is not present in this summary but in the other, it is added to this
summary.
Trait Implementations§
Source§impl<K: Clone + Hash + Eq> Clone for MetricsSummary<K>
impl<K: Clone + Hash + Eq> Clone for MetricsSummary<K>
Source§fn clone(&self) -> MetricsSummary<K>
fn clone(&self) -> MetricsSummary<K>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<K> Default for MetricsSummary<K>
impl<K> Default for MetricsSummary<K>
Source§impl<'de, K> Deserialize<'de> for MetricsSummary<K>
impl<'de, K> Deserialize<'de> for MetricsSummary<K>
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<K> JsonSchema for MetricsSummary<K>
impl<K> JsonSchema for MetricsSummary<K>
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl<K> Serialize for MetricsSummary<K>
impl<K> Serialize for MetricsSummary<K>
impl<K: Hash + Eq> StructuralPartialEq for MetricsSummary<K>
Auto Trait Implementations§
impl<K> Freeze for MetricsSummary<K>
impl<K> RefUnwindSafe for MetricsSummary<K>where
K: RefUnwindSafe,
impl<K> Send for MetricsSummary<K>where
K: Send,
impl<K> Sync for MetricsSummary<K>where
K: Sync,
impl<K> Unpin for MetricsSummary<K>where
K: Unpin,
impl<K> UnwindSafe for MetricsSummary<K>where
K: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more