pub struct AxisCoverage {
pub examined: &'static [&'static str],
pub advisory: &'static [(&'static str, &'static str)],
pub not_examined: &'static [(&'static str, &'static str)],
}Expand description
One surface’s static coverage claim: which axes its verdict answers for, which it reports beside the verdict without folding them in, and which lie outside its scope altogether. The three lists must jointly name every axis in the vocabulary; a blanket “everything else” clause is deliberately impossible, because it would swallow a newly introduced axis silently, and the one permanent property this module owes is that a new axis fails every declaration that has not met it.
The three buckets, as they read on the wire:
examined: the verdict answers for the axis; a finding there makes the verdict fail.advisory: the surface renders the axis (always, or on request) beside the verdict and never folds it in; a reader sees the figures, the verdict says nothing about them. Filing these under “not examined” read, to every independent reader so far, as “not looked at”, and a gate reading the word would refuse a report that had done the work.not_examined: the surface does not look at the axis at all; the reason names the surface that answers for it.
Fields§
§examined: &'static [&'static str]Axes the surface’s clean verdict actually examined.
advisory: &'static [(&'static str, &'static str)]Axes the surface reports beside its verdict without folding them in, each with the reason a reader needs.
not_examined: &'static [(&'static str, &'static str)]Axes the surface does not examine, each with the reason a reader needs (typically: which surface answers for it instead).
Implementations§
Source§impl AxisCoverage
impl AxisCoverage
Sourcepub fn examined_wire(&self) -> Vec<&'static str>
pub fn examined_wire(&self) -> Vec<&'static str>
The examined set as it is stamped into surface output.
Sourcepub fn advisory_wire(&self) -> Vec<(&'static str, &'static str)>
pub fn advisory_wire(&self) -> Vec<(&'static str, &'static str)>
The advisory axes as they are stamped into surface output:
(axis, reason) pairs, so a reader can see which axes the
surface reports beside its verdict without reading the source.
Sourcepub fn not_examined_wire(&self) -> Vec<(&'static str, &'static str)>
pub fn not_examined_wire(&self) -> Vec<(&'static str, &'static str)>
The unexamined axes as they are stamped into surface output:
(axis, reason) pairs, so a reader can see which axes the
verdict does not cover without reading the source.
Sourcepub fn wire_line(&self) -> String
pub fn wire_line(&self) -> String
The declaration as it is stamped into surface output: one compact line naming both axis sets, the same form on JSON, markdown, and frontmatter surfaces. Axis names only: the per-axis exclusion reasons stay a registry fact the gate test enforces, because stamping static prose into every response would tax each call’s token budget, and the reader’s question the stamp answers is WHICH axes the verdict covers.
Sourcepub fn wire_line_promoting(&self, promoted: &[&str]) -> String
pub fn wire_line_promoting(&self, promoted: &[&str]) -> String
The wire line with the named advisory or unexamined axes
promoted into the examined set — for a report that rendered an
opt-in axis this pass (--include anchors) and therefore did
examine it. An axis in neither list is ignored; the static
declaration is untouched.
Trait Implementations§
Source§impl Clone for AxisCoverage
impl Clone for AxisCoverage
Source§fn clone(&self) -> AxisCoverage
fn clone(&self) -> AxisCoverage
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for AxisCoverage
Auto Trait Implementations§
impl Freeze for AxisCoverage
impl RefUnwindSafe for AxisCoverage
impl Send for AxisCoverage
impl Sync for AxisCoverage
impl Unpin for AxisCoverage
impl UnsafeUnpin for AxisCoverage
impl UnwindSafe for AxisCoverage
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> Fruit for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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> ⓘ
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> ⓘ
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