#[non_exhaustive]pub struct PrevalidationSignal {
pub subject_ref: Option<String>,
pub dimension: Option<SignalDimension>,
pub signal_strength: Option<SignalStrength>,
pub conclusion: Option<String>,
pub producer_id: Option<String>,
pub producer_version: Option<String>,
pub confidence: Option<f64>,
pub confidence_reasoning: Option<SignalConfidenceReasoning>,
pub computed: Option<SignalComputation>,
pub preconditions: Option<SignalPreconditions>,
pub impact_dimensions: Option<SignalImpactDimensions>,
pub exploitability: Option<SignalExploitability>,
}Expand description
One producer’s conclusion about one subject on one scoring dimension.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.subject_ref: Option<String>What this signal is about, such as a finding or issue reference.
dimension: Option<SignalDimension>The axis this signal speaks to. Absent when the producer reported a dimension with no mapping yet.
signal_strength: Option<SignalStrength>The signal’s own rating. This is an input to scoring and is NOT the finding’s severity.
conclusion: Option<String>The producer’s conclusion.
producer_id: Option<String>Stable name of the producer that emitted this signal.
producer_version: Option<String>Version of that producer.
confidence: Option<f64>The producer’s confidence in this conclusion, on its native 0-1 scale. Absent when the stored value falls outside 0-1.
confidence_reasoning: Option<SignalConfidenceReasoning>Why the producer is or is not sure, kept structured rather than prose.
computed: Option<SignalComputation>The deterministic values the producer computed from its assessment.
preconditions: Option<SignalPreconditions>The four exploit preconditions a likelihood signal assessed, each with the basis the producer had for it.
impact_dimensions: Option<SignalImpactDimensions>The three impact dimensions an impact signal assessed, each with the basis the producer had for it. These are what the computed impact band is derived from.
exploitability: Option<SignalExploitability>What validation established about exploitability, on an exploitability signal. This summarizes the verdict the signal was derived from; the proof itself is the VALIDATION_EVIDENCE artifact it cites.
Implementations§
Source§impl PrevalidationSignal
impl PrevalidationSignal
Sourcepub fn subject_ref(&self) -> Option<&str>
pub fn subject_ref(&self) -> Option<&str>
What this signal is about, such as a finding or issue reference.
Sourcepub fn dimension(&self) -> Option<&SignalDimension>
pub fn dimension(&self) -> Option<&SignalDimension>
The axis this signal speaks to. Absent when the producer reported a dimension with no mapping yet.
Sourcepub fn signal_strength(&self) -> Option<&SignalStrength>
pub fn signal_strength(&self) -> Option<&SignalStrength>
The signal’s own rating. This is an input to scoring and is NOT the finding’s severity.
Sourcepub fn conclusion(&self) -> Option<&str>
pub fn conclusion(&self) -> Option<&str>
The producer’s conclusion.
Sourcepub fn producer_id(&self) -> Option<&str>
pub fn producer_id(&self) -> Option<&str>
Stable name of the producer that emitted this signal.
Sourcepub fn producer_version(&self) -> Option<&str>
pub fn producer_version(&self) -> Option<&str>
Version of that producer.
Sourcepub fn confidence(&self) -> Option<f64>
pub fn confidence(&self) -> Option<f64>
The producer’s confidence in this conclusion, on its native 0-1 scale. Absent when the stored value falls outside 0-1.
Sourcepub fn confidence_reasoning(&self) -> Option<&SignalConfidenceReasoning>
pub fn confidence_reasoning(&self) -> Option<&SignalConfidenceReasoning>
Why the producer is or is not sure, kept structured rather than prose.
Sourcepub fn computed(&self) -> Option<&SignalComputation>
pub fn computed(&self) -> Option<&SignalComputation>
The deterministic values the producer computed from its assessment.
Sourcepub fn preconditions(&self) -> Option<&SignalPreconditions>
pub fn preconditions(&self) -> Option<&SignalPreconditions>
The four exploit preconditions a likelihood signal assessed, each with the basis the producer had for it.
Sourcepub fn impact_dimensions(&self) -> Option<&SignalImpactDimensions>
pub fn impact_dimensions(&self) -> Option<&SignalImpactDimensions>
The three impact dimensions an impact signal assessed, each with the basis the producer had for it. These are what the computed impact band is derived from.
Sourcepub fn exploitability(&self) -> Option<&SignalExploitability>
pub fn exploitability(&self) -> Option<&SignalExploitability>
What validation established about exploitability, on an exploitability signal. This summarizes the verdict the signal was derived from; the proof itself is the VALIDATION_EVIDENCE artifact it cites.
Source§impl PrevalidationSignal
impl PrevalidationSignal
Sourcepub fn builder() -> PrevalidationSignalBuilder
pub fn builder() -> PrevalidationSignalBuilder
Creates a new builder-style object to manufacture PrevalidationSignal.
Trait Implementations§
Source§impl Clone for PrevalidationSignal
impl Clone for PrevalidationSignal
Source§impl Debug for PrevalidationSignal
impl Debug for PrevalidationSignal
Source§impl PartialEq for PrevalidationSignal
impl PartialEq for PrevalidationSignal
impl StructuralPartialEq for PrevalidationSignal
Auto Trait Implementations§
impl Freeze for PrevalidationSignal
impl RefUnwindSafe for PrevalidationSignal
impl Send for PrevalidationSignal
impl Sync for PrevalidationSignal
impl Unpin for PrevalidationSignal
impl UnsafeUnpin for PrevalidationSignal
impl UnwindSafe for PrevalidationSignal
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);