pub enum Temporary {
Alloc,
Free,
Load,
Store,
LoadRange,
StoreRange,
}
Expand description
Operations for temporary memory.
Variants§
Alloc
0x70
: ALOC
Allocate a new block of memory to the end of the temporary memory. Sets new memory to 0. Returns the index to the start of the new block of memory. Allocate 0 to get the current length of the memory.
§Stack Input
[size]
§Stack Output
[index]
§Panics
- Max memory size reached.
Free
Load
0x72
: LOD
Load the value at the index of temporary memory onto the stack.
§Stack Input
[index]
§Stack Output
[value]
§Panics
- Index is out of bounds.
Store
0x73
: STO
Store the value at the index of temporary memory.
§Stack Input
[index, value]
§Panics
- Index is out of bounds.
LoadRange
0x74
: LODR
Load a range of words starting at the index of temporary memory.
§Stack Input
[index, len]
§Stack Output
[values]
§Panics
- Index is out of bounds.
- Index + len is out of bounds.
StoreRange
Trait Implementations§
Source§impl From<Temporary> for Constraint
impl From<Temporary> for Constraint
Source§fn from(subgroup: Temporary) -> Constraint
fn from(subgroup: Temporary) -> Constraint
Converts to this type from the input type.
Source§impl Ord for Temporary
impl Ord for Temporary
Source§impl PartialOrd for Temporary
impl PartialOrd for Temporary
Source§impl TryFromBytes for Temporary
impl TryFromBytes for Temporary
Source§type Error = FromBytesError
type Error = FromBytesError
Represents any error that might occur while parsing an op from bytes.
impl Copy for Temporary
impl Eq for Temporary
impl StructuralPartialEq for Temporary
Auto Trait Implementations§
impl Freeze for Temporary
impl RefUnwindSafe for Temporary
impl Send for Temporary
impl Sync for Temporary
impl Unpin for Temporary
impl UnwindSafe for Temporary
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Converts
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>
Converts
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