pub struct PassiveVerifier { /* private fields */ }Expand description
Pure verifier for evidence collected without an additional probe.
§Example
use termivar_core::{
EvidenceValue, KnowledgePredicate, OutcomeStatus, Probability, VerificationStage,
};
use termivar_scanner::{
Expression, KnowledgeLayer, PassiveVerifier, VerificationRule, VerifierWrite,
};
let rule = VerificationRule::new(
"verify.boolean-difference",
VerificationStage::Passive,
100,
Expression::equals(
KnowledgeLayer::Evidence,
KnowledgePredicate::new("verification", "boolean_difference")?,
EvidenceValue::Boolean(true),
),
OutcomeStatus::Success,
Probability::from_percent(95)?,
"Boolean responses diverged consistently",
)?;
let mut verifier = PassiveVerifier::new();
assert_eq!(verifier.register(rule)?, VerifierWrite::Inserted);Implementations§
Source§impl PassiveVerifier
impl PassiveVerifier
Sourcepub fn register(
&mut self,
rule: VerificationRule,
) -> Result<VerifierWrite, VerificationError>
pub fn register( &mut self, rule: VerificationRule, ) -> Result<VerifierWrite, VerificationError>
Registers one passive rule idempotently.
Sourcepub fn verify(
&self,
knowledge: &KnowledgeBase,
case: &VerificationCase,
) -> Result<VerificationReport, VerificationError>
pub fn verify( &self, knowledge: &KnowledgeBase, case: &VerificationCase, ) -> Result<VerificationReport, VerificationError>
Verifies a case from one internally consistent knowledge snapshot.
Sourcepub fn verify_snapshot(
&self,
case: &VerificationCase,
snapshot: &KnowledgeSnapshot,
) -> Result<VerificationReport, VerificationError>
pub fn verify_snapshot( &self, case: &VerificationCase, snapshot: &KnowledgeSnapshot, ) -> Result<VerificationReport, VerificationError>
Verifies a case against an explicit immutable snapshot.
Trait Implementations§
Source§impl Clone for PassiveVerifier
impl Clone for PassiveVerifier
Source§fn clone(&self) -> PassiveVerifier
fn clone(&self) -> PassiveVerifier
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 PassiveVerifier
impl Debug for PassiveVerifier
Auto Trait Implementations§
impl Freeze for PassiveVerifier
impl RefUnwindSafe for PassiveVerifier
impl Send for PassiveVerifier
impl Sync for PassiveVerifier
impl Unpin for PassiveVerifier
impl UnsafeUnpin for PassiveVerifier
impl UnwindSafe for PassiveVerifier
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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