pub enum ModelType {
Unspecified,
Auto,
Int,
Bool,
Unit,
BitVec(Option<usize>),
Struct(Vec<ModelField>),
Named(Ident),
}Expand description
A model of an SMT-LIB type.
Variants§
Unspecified
Unspecified type.
Unlike an auto-derived type, unspecified is a concrete type. However, values of this type cannot be used for anything non-trivial. It is intended to be used as a placeholder for a type that is not yet known, but only appears in rules that are not yet covered by verification.
Auto
Automatically deduced primitive type, left to type-inference to determine.
Int
SMT-LIB Int
Bool
SMT-LIB Bool
Unit
Unit type.
BitVec(Option<usize>)
SMT-LIB bitvector, but with a potentially-polymorphic width
Struct(Vec<ModelField>)
Structured type.
Named(Ident)
Same model as the named type.
Trait Implementations§
impl Eq for ModelType
impl StructuralPartialEq for ModelType
Auto Trait Implementations§
impl Freeze for ModelType
impl RefUnwindSafe for ModelType
impl Send for ModelType
impl Sync for ModelType
impl Unpin for ModelType
impl UnsafeUnpin for ModelType
impl UnwindSafe for ModelType
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