pub struct MatchExplanation {
pub tier: MatchTier,
pub score: f64,
pub reason: String,
pub score_breakdown: Vec<ScoreComponent>,
pub normalizations_applied: Vec<String>,
pub is_match: bool,
}Expand description
Human-readable explanation of why two components matched (or didn’t).
Useful for debugging match decisions and auditing SBOM diff results.
Fields§
§tier: MatchTierThe matching tier that produced this result
score: f64The final confidence score
reason: StringHuman-readable reason for the match/non-match
score_breakdown: Vec<ScoreComponent>Detailed breakdown of score components
normalizations_applied: Vec<String>Normalizations that were applied
is_match: boolWhether this was a successful match
Implementations§
Source§impl MatchExplanation
impl MatchExplanation
Sourcepub fn matched(tier: MatchTier, score: f64, reason: impl Into<String>) -> Self
pub fn matched(tier: MatchTier, score: f64, reason: impl Into<String>) -> Self
Create an explanation for a successful match.
Sourcepub fn with_score_component(self, component: ScoreComponent) -> Self
pub fn with_score_component(self, component: ScoreComponent) -> Self
Add a score component to the breakdown.
Sourcepub fn with_normalization(self, normalization: impl Into<String>) -> Self
pub fn with_normalization(self, normalization: impl Into<String>) -> Self
Add a normalization that was applied.
Trait Implementations§
Source§impl Clone for MatchExplanation
impl Clone for MatchExplanation
Source§fn clone(&self) -> MatchExplanation
fn clone(&self) -> MatchExplanation
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 Debug for MatchExplanation
impl Debug for MatchExplanation
Auto Trait Implementations§
impl Freeze for MatchExplanation
impl RefUnwindSafe for MatchExplanation
impl Send for MatchExplanation
impl Sync for MatchExplanation
impl Unpin for MatchExplanation
impl UnsafeUnpin for MatchExplanation
impl UnwindSafe for MatchExplanation
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> 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>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
Fallible version of
ToCompactString::to_compact_string() Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
Converts the given value to a
CompactString. Read moreSource§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.