Enum essential_check::state_read_vm::asm::StateSlots
source · pub enum StateSlots {
AllocSlots,
Load,
Store,
LoadWord,
StoreWord,
Clear,
ClearRange,
Length,
ValueLen,
}
Expand description
Operations for controlling mutable state slots.
Variants§
AllocSlots
Load
0x81
Load the value at the index of a slot onto the stack.
Noop if the slot is empty.
§Stack Input
[index]
§Stack Output
[value_word, ...]
The stack output length depends on the value of the value_len
stack input word.
§Panics
- Index is out of bounds.
Store
0x82
Store the value at the index of state slots.
§Stack Input
[value_word_0, ...value_word_len, len, index]
§Panics
- Index is out of bounds.
LoadWord
0x83
Load the word at the index of the value at the slot onto the stack.
§Stack Input
[slot, index]
§Stack Output
[Value_word]
§Panics
- Slot or Index is out of bounds.
StoreWord
0x84
Store the word at the index of the value at the slot.
§Stack Input
[slot, index, word]
§Panics
- Slot or Index is out of bounds.
Clear
ClearRange
Length
ValueLen
Trait Implementations§
source§impl Clone for StateSlots
impl Clone for StateSlots
source§fn clone(&self) -> StateSlots
fn clone(&self) -> StateSlots
Returns a copy of the value. Read more
1.0.0 · 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 StateSlots
impl Debug for StateSlots
source§impl From<StateSlots> for StateRead
impl From<StateSlots> for StateRead
source§fn from(subgroup: StateSlots) -> StateRead
fn from(subgroup: StateSlots) -> StateRead
Converts to this type from the input type.
source§impl Hash for StateSlots
impl Hash for StateSlots
source§impl Ord for StateSlots
impl Ord for StateSlots
source§fn cmp(&self, other: &StateSlots) -> Ordering
fn cmp(&self, other: &StateSlots) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for StateSlots
impl PartialEq for StateSlots
source§fn eq(&self, other: &StateSlots) -> bool
fn eq(&self, other: &StateSlots) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for StateSlots
impl PartialOrd for StateSlots
source§fn partial_cmp(&self, other: &StateSlots) -> Option<Ordering>
fn partial_cmp(&self, other: &StateSlots) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl ToBytes for StateSlots
impl ToBytes for StateSlots
§type Bytes = StateSlots
type Bytes = StateSlots
The iterator yielding bytes.
source§impl ToOpcode for StateSlots
impl ToOpcode for StateSlots
§type Opcode = StateSlots
type Opcode = StateSlots
The associated
Opcode
type.source§impl TryFromBytes for StateSlots
impl TryFromBytes for StateSlots
§type Error = FromBytesError
type Error = FromBytesError
Represents any error that might occur while parsing an op from bytes.
source§fn try_from_bytes(
bytes: &mut impl Iterator<Item = u8>,
) -> Option<Result<StateSlots, <StateSlots as TryFromBytes>::Error>>
fn try_from_bytes( bytes: &mut impl Iterator<Item = u8>, ) -> Option<Result<StateSlots, <StateSlots as TryFromBytes>::Error>>
Parse a single operation from the given iterator yielding bytes. Read more
impl Copy for StateSlots
impl Eq for StateSlots
impl StructuralPartialEq for StateSlots
Auto Trait Implementations§
impl Freeze for StateSlots
impl RefUnwindSafe for StateSlots
impl Send for StateSlots
impl Sync for StateSlots
impl Unpin for StateSlots
impl UnwindSafe for StateSlots
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)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