Skip to main content

Args

Trait Args 

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

Trait for converting arguments onto the stack.

Required Methods§

Source

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

Encode arguments onto a stack.

Source

fn try_into_vec(self) -> Result<Vec<Value>, VmError>

Convert arguments into a vector.

Source

fn count(&self) -> usize

The number of arguments.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl Args for ()

Source§

impl Args for Vec<Value>

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§

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§

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§

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§

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§

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§

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§

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§

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§

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§

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§

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§

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

Source§

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

Source§

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

Source§

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

Implementors§

Source§

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