Enum move_model::ast::Operation
source · [−]pub enum Operation {
Show 62 variants
Function(ModuleId, SpecFunId, Option<Vec<MemoryLabel>>),
Pack(ModuleId, StructId),
Tuple,
Select(ModuleId, StructId, FieldId),
UpdateField(ModuleId, StructId, FieldId),
Result(usize),
Index,
Slice,
Range,
Add,
Sub,
Mul,
Mod,
Div,
BitOr,
BitAnd,
Xor,
Shl,
Shr,
Implies,
Iff,
And,
Or,
Eq,
Identical,
Neq,
Lt,
Gt,
Le,
Ge,
Not,
Len,
TypeValue,
TypeDomain,
ResourceDomain,
Global(Option<MemoryLabel>),
Exists(Option<MemoryLabel>),
CanModify,
Old,
Trace(TraceKind),
EmptyVec,
SingleVec,
UpdateVec,
ConcatVec,
IndexOfVec,
ContainsVec,
InRangeRange,
InRangeVec,
RangeVec,
MaxU8,
MaxU64,
MaxU128,
AbortFlag,
AbortCode,
WellFormed,
BoxValue,
UnboxValue,
EmptyEventStore,
ExtendEventStore,
EventStoreIncludes,
EventStoreIncludedIn,
NoOp,
}
Variants
Function(ModuleId, SpecFunId, Option<Vec<MemoryLabel>>)
Pack(ModuleId, StructId)
Tuple
Select(ModuleId, StructId, FieldId)
UpdateField(ModuleId, StructId, FieldId)
Result(usize)
Index
Slice
Range
Add
Sub
Mul
Mod
Div
BitOr
BitAnd
Xor
Shl
Shr
Implies
Iff
And
Or
Eq
Identical
Neq
Lt
Gt
Le
Ge
Not
Len
TypeValue
TypeDomain
ResourceDomain
Global(Option<MemoryLabel>)
Exists(Option<MemoryLabel>)
CanModify
Old
Trace(TraceKind)
EmptyVec
SingleVec
UpdateVec
ConcatVec
IndexOfVec
ContainsVec
InRangeRange
InRangeVec
RangeVec
MaxU8
MaxU64
MaxU128
AbortFlag
AbortCode
WellFormed
BoxValue
UnboxValue
EmptyEventStore
ExtendEventStore
EventStoreIncludes
EventStoreIncludedIn
NoOp
Implementations
Trait Implementations
impl Eq for Operation
impl StructuralEq for Operation
impl StructuralPartialEq for Operation
Auto Trait Implementations
impl RefUnwindSafe for Operation
impl Send for Operation
impl Sync for Operation
impl Unpin for Operation
impl UnwindSafe for Operation
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> CallHasher for T where
T: Hash + ?Sized,
impl<T> CallHasher for T where
T: Hash + ?Sized,
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
🔬 This is a nightly-only experimental API. (
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more