Stack

Struct Stack 

Source
pub struct Stack {
    pub values: Vec<Value>,
}
Expand description

§The operand stack

StackAssembly’s evaluation model is based on an implicit stack which stores all operands.

Aside from this, the stack is an important communication channel between script and host. Please refer to Eval’s stack field for more information on that.

Fields§

§values: Vec<Value>

§The values on the stack

Implementations§

Source§

impl Stack

Source

pub fn push(&mut self, value: impl Into<Value>)

§Push a value to top of the stack
Source

pub fn pop(&mut self) -> Result<Value, StackUnderflow>

§Pop a value from the top of the stack

Return StackUnderflow, if no value is available on the stack, which provides an automatic conversion to Effect.

Source

pub fn to_i32_slice(&self) -> &[i32]

§Access the stack as a slice of i32 values
Source

pub fn to_u32_slice(&self) -> &[u32]

§Access the stack as a slice of u32 values

Trait Implementations§

Source§

impl Debug for Stack

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Stack

§

impl RefUnwindSafe for Stack

§

impl Send for Stack

§

impl Sync for Stack

§

impl Unpin for Stack

§

impl UnwindSafe for Stack

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.