[][src]Trait runestick::Args

pub trait Args {
    fn into_stack(self, stack: &mut Stack) -> Result<(), VmError>;
fn into_vec(self) -> Result<Vec<Value>, VmError>;
fn count() -> usize; }

Trait for converting arguments into values unsafely.

This has the ability to encode references.

Required methods

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

Encode arguments into a stack.

Safety

This has the ability to encode references into the stack. The caller must ensure that the stack is cleared with [clear][Stack::clear] before the references are no longer valid.

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

Convert arguments into a vector.

fn count() -> usize

The number of arguments.

Loading content...

Implementations on Foreign Types

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 + Debug,
    B: ToValue + Debug,
    C: ToValue + Debug,
    D: ToValue + Debug,
    E: ToValue + Debug,
    F: ToValue + Debug,
    G: ToValue + Debug,
    H: ToValue + Debug,
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

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

impl<C, D, E, F, G, H, I, J, K, L, M, N, O, P> Args for (C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
    C: ToValue + Debug,
    D: ToValue + Debug,
    E: ToValue + Debug,
    F: ToValue + Debug,
    G: ToValue + Debug,
    H: ToValue + Debug,
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<D, E, F, G, H, I, J, K, L, M, N, O, P> Args for (D, E, F, G, H, I, J, K, L, M, N, O, P) where
    D: ToValue + Debug,
    E: ToValue + Debug,
    F: ToValue + Debug,
    G: ToValue + Debug,
    H: ToValue + Debug,
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<E, F, G, H, I, J, K, L, M, N, O, P> Args for (E, F, G, H, I, J, K, L, M, N, O, P) where
    E: ToValue + Debug,
    F: ToValue + Debug,
    G: ToValue + Debug,
    H: ToValue + Debug,
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<F, G, H, I, J, K, L, M, N, O, P> Args for (F, G, H, I, J, K, L, M, N, O, P) where
    F: ToValue + Debug,
    G: ToValue + Debug,
    H: ToValue + Debug,
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<G, H, I, J, K, L, M, N, O, P> Args for (G, H, I, J, K, L, M, N, O, P) where
    G: ToValue + Debug,
    H: ToValue + Debug,
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<H, I, J, K, L, M, N, O, P> Args for (H, I, J, K, L, M, N, O, P) where
    H: ToValue + Debug,
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<I, J, K, L, M, N, O, P> Args for (I, J, K, L, M, N, O, P) where
    I: ToValue + Debug,
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<J, K, L, M, N, O, P> Args for (J, K, L, M, N, O, P) where
    J: ToValue + Debug,
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<K, L, M, N, O, P> Args for (K, L, M, N, O, P) where
    K: ToValue + Debug,
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<L, M, N, O, P> Args for (L, M, N, O, P) where
    L: ToValue + Debug,
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<M, N, O, P> Args for (M, N, O, P) where
    M: ToValue + Debug,
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<N, O, P> Args for (N, O, P) where
    N: ToValue + Debug,
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<O, P> Args for (O, P) where
    O: ToValue + Debug,
    P: ToValue + Debug
[src]

impl<P> Args for (P,) where
    P: ToValue + Debug
[src]

impl Args for ()[src]

Loading content...

Implementors

Loading content...