pub enum AnalysisFactError {
Show 18 variants
InvalidFactId {
id: FactId,
},
DuplicateFactId {
id: FactId,
},
InvalidSpan {
context: String,
start_byte: u32,
end_byte: u32,
},
InvalidConfidence {
id: FactId,
confidence_bps: u16,
},
MissingInferenceReason {
id: FactId,
},
SelfProvenance {
id: FactId,
},
InvalidPayloadKey {
id: FactId,
},
MissingProvenanceParent {
id: FactId,
parent: FactId,
},
InvalidFindingIdentity {
field: &'static str,
},
InvalidFindingConfidence {
finding_id: String,
confidence_bps: u16,
},
FindingHasNoFacts {
finding_id: String,
},
FindingHasNoProofPath {
finding_id: String,
},
FindingHasNoSoundnessEvidence {
finding_id: String,
},
FindingSoundnessViolation {
finding_id: String,
violation: DynamicSoundnessViolation,
},
FindingSoundnessMismatch {
finding_id: String,
declared: Soundness,
computed: Soundness,
},
FindingReferencesMissingFact {
finding_id: String,
fact_id: FactId,
},
InvalidProofRole {
fact_id: FactId,
},
UnexpectedFactKind {
id: FactId,
role: &'static str,
expected: String,
actual: FactKind,
},
}Expand description
Analysis fact/finding validation failure.
Variants§
InvalidFactId
A fact id was zero.
DuplicateFactId
A fact id appeared more than once.
InvalidSpan
A source span had reversed byte order.
InvalidConfidence
Confidence exceeded 10000 basis points.
MissingInferenceReason
Inferred fact had no explanation.
SelfProvenance
Fact listed itself as provenance.
InvalidPayloadKey
Payload key was blank.
MissingProvenanceParent
A provenance parent id was missing.
InvalidFindingIdentity
A finding identity field was blank.
InvalidFindingConfidence
Finding confidence exceeded 10000 basis points.
FindingHasNoFacts
Finding referenced no facts.
FindingHasNoProofPath
Finding had no proof path.
FindingHasNoSoundnessEvidence
Finding had no primitive soundness evidence.
FindingSoundnessViolation
Finding primitive evidence violated its precision contract.
Fields
violation: DynamicSoundnessViolationCanonical dynamic soundness violation.
FindingSoundnessMismatch
Finding declared a composed soundness marker inconsistent with evidence.
Fields
FindingReferencesMissingFact
Finding referenced an absent fact.
InvalidProofRole
Proof role was blank.
UnexpectedFactKind
A fact was present but had the wrong kind for its query role.
Trait Implementations§
Source§impl Clone for AnalysisFactError
impl Clone for AnalysisFactError
Source§fn clone(&self) -> AnalysisFactError
fn clone(&self) -> AnalysisFactError
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AnalysisFactError
impl Debug for AnalysisFactError
Source§impl Display for AnalysisFactError
impl Display for AnalysisFactError
impl Eq for AnalysisFactError
Source§impl Error for AnalysisFactError
impl Error for AnalysisFactError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<AnalysisFactError> for SecurityRelationAnalyzerError
impl From<AnalysisFactError> for SecurityRelationAnalyzerError
Source§fn from(error: AnalysisFactError) -> Self
fn from(error: AnalysisFactError) -> Self
Source§impl PartialEq for AnalysisFactError
impl PartialEq for AnalysisFactError
impl StructuralPartialEq for AnalysisFactError
Auto Trait Implementations§
impl Freeze for AnalysisFactError
impl RefUnwindSafe for AnalysisFactError
impl Send for AnalysisFactError
impl Sync for AnalysisFactError
impl Unpin for AnalysisFactError
impl UnsafeUnpin for AnalysisFactError
impl UnwindSafe for AnalysisFactError
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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