pub struct VerificationCondition {
pub name: String,
pub kind: VcKind,
pub declarations: Vec<SmtDecl>,
pub assumes: Vec<Spanned<Expr>>,
pub goals: Vec<Spanned<Expr>>,
pub safety_rules: Vec<SafetySource>,
pub unsupported: Option<String>,
}Expand description
A verification condition to be checked by SMT.
Fields§
§name: String§kind: VcKind§declarations: Vec<SmtDecl>Declarations needed (types, uninterpreted functions).
assumes: Vec<Spanned<Expr>>Assertions: requires + invariants(unprimed).
goals: Vec<Spanned<Expr>>Goal: ensures + invariants(as written, may contain primes).
safety_rules: Vec<SafetySource>Safety rules merged from safety declarations.
unsupported: Option<String>If set, this VC cannot be encoded yet — reason string.
Trait Implementations§
Source§impl Clone for VerificationCondition
impl Clone for VerificationCondition
Auto Trait Implementations§
impl Forget for VerificationCondition
impl Freeze for VerificationCondition
impl RefUnwindSafe for VerificationCondition
impl Send for VerificationCondition
impl Sync for VerificationCondition
impl Unpin for VerificationCondition
impl UnsafeUnpin for VerificationCondition
impl UnwindSafe for VerificationCondition
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