Skip to main content

VecDiagnostics

Struct VecDiagnostics 

Source
#[non_exhaustive]
pub struct VecDiagnostics { pub skips: Vec<SkipReport>, }
Expand description

A Vec-backed sink for tests and integration code that wants to assert on the recorded skip events.

VecDiagnostics is #[non_exhaustive] — construct via VecDiagnostics::default. The skips field stays pub so integration tests can read recorded events directly; downstream crates that prefer not to depend on a pub field can use VecDiagnostics::skips for read access.

§Examples

use face_core::VecDiagnostics;

let diag = VecDiagnostics::default();
assert!(diag.skips().is_empty());

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§skips: Vec<SkipReport>

Skips recorded since construction, in order.

Implementations§

Source§

impl VecDiagnostics

Source

pub fn skips(&self) -> &[SkipReport]

Borrow the recorded skip reports in insertion order.

Equivalent to reading self.skips directly but doesn’t depend on the pub field, which keeps the accessor stable if the internal representation evolves.

Trait Implementations§

Source§

impl Debug for VecDiagnostics

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for VecDiagnostics

Source§

fn default() -> VecDiagnostics

Returns the “default value” for a type. Read more
Source§

impl Diagnostics for VecDiagnostics

Source§

fn record_skip(&mut self, report: SkipReport)

Record one SkipReport. Implementations decide whether to print, count, accumulate, or drop it.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.