rune::runtime

Trait Args

Source
pub trait Args {
    // Required methods
    fn into_stack(self, stack: &mut Stack) -> VmResult<()>;
    fn try_into_vec(self) -> VmResult<Vec<Value>>;
    fn count(&self) -> usize;
}
Expand description

Trait for converting arguments onto the stack.

Required Methods§

Source

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Encode arguments onto a stack.

Source

fn try_into_vec(self) -> VmResult<Vec<Value>>

Convert arguments into a vector.

Source

fn count(&self) -> usize

The number of arguments.

Implementations on Foreign Types§

Source§

impl Args for ()

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl Args for Vec<Value>

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A> Args for (A,)
where A: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B> Args for (A, B)
where A: ToValue, B: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C> Args for (A, B, C)
where A: ToValue, B: ToValue, C: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D> Args for (A, B, C, D)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E> Args for (A, B, C, D, E)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F> Args for (A, B, C, D, E, F)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G> Args for (A, B, C, D, E, F, G)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H> Args for (A, B, C, D, E, F, G, H)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I> Args for (A, B, C, D, E, F, G, H, I)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I, J> Args for (A, B, C, D, E, F, G, H, I, J)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue, J: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I, J, K> Args for (A, B, C, D, E, F, G, H, I, J, K)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue, J: ToValue, K: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L> Args for (A, B, C, D, E, F, G, H, I, J, K, L)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue, J: ToValue, K: ToValue, L: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M> Args for (A, B, C, D, E, F, G, H, I, J, K, L, M)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue, J: ToValue, K: ToValue, L: ToValue, M: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N> Args for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue, J: ToValue, K: ToValue, L: ToValue, M: ToValue, N: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> Args for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue, J: ToValue, K: ToValue, L: ToValue, M: ToValue, N: ToValue, O: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Source§

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> Args for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)
where A: ToValue, B: ToValue, C: ToValue, D: ToValue, E: ToValue, F: ToValue, G: ToValue, H: ToValue, I: ToValue, J: ToValue, K: ToValue, L: ToValue, M: ToValue, N: ToValue, O: ToValue, P: ToValue,

Source§

fn into_stack(self, stack: &mut Stack) -> VmResult<()>

Source§

fn try_into_vec(self) -> VmResult<Vec<Value>>

Source§

fn count(&self) -> usize

Implementors§

Source§

impl Args for rune::alloc::Vec<Value>