[][src]Trait ducc::FromValues

pub trait FromValues<'ducc>: Sized {
    fn from_values(values: Values<'ducc>, ducc: &'ducc Ducc) -> Result<Self>;
}

Trait for types that can be created from an arbitrary number of JavaScript values.

This is a generalization of FromValue, allowing an arbitrary number of JavaScript values to participate in the conversion. Any type that implements FromValue will automatically implement this trait.

Required methods

fn from_values(values: Values<'ducc>, ducc: &'ducc Ducc) -> Result<Self>

Performs the conversion.

In case values contains more values than needed to perform the conversion, the excess values should be ignored. This reflects the semantics of Duktape when calling a function or assigning values. Similarly, if not enough values are given, conversions should assume that any missing values are nil.

Loading content...

Implementations on Foreign Types

impl<'ducc> FromValues<'ducc> for ()[src]

impl<'ducc, A> FromValues<'ducc> for (A,) where
    A: FromValue<'ducc>, 
[src]

impl<'ducc, A, VAR> FromValues<'ducc> for (A, Variadic<VAR>) where
    A: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B> FromValues<'ducc> for (A, B) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, VAR> FromValues<'ducc> for (A, B, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C> FromValues<'ducc> for (A, B, C) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, VAR> FromValues<'ducc> for (A, B, C, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D> FromValues<'ducc> for (A, B, C, D) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, VAR> FromValues<'ducc> for (A, B, C, D, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E> FromValues<'ducc> for (A, B, C, D, E) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, VAR> FromValues<'ducc> for (A, B, C, D, E, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F> FromValues<'ducc> for (A, B, C, D, E, F) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, VAR> FromValues<'ducc> for (A, B, C, D, E, F, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G> FromValues<'ducc> for (A, B, C, D, E, F, G) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H> FromValues<'ducc> for (A, B, C, D, E, F, G, H) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M, N> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>,
    N: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M, N, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>,
    N: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>,
    N: FromValue<'ducc>,
    O: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>,
    N: FromValue<'ducc>,
    O: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>,
    N: FromValue<'ducc>,
    O: FromValue<'ducc>,
    P: FromValue<'ducc>, 
[src]

impl<'ducc, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, VAR> FromValues<'ducc> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Variadic<VAR>) where
    A: FromValue<'ducc>,
    B: FromValue<'ducc>,
    C: FromValue<'ducc>,
    D: FromValue<'ducc>,
    E: FromValue<'ducc>,
    F: FromValue<'ducc>,
    G: FromValue<'ducc>,
    H: FromValue<'ducc>,
    I: FromValue<'ducc>,
    J: FromValue<'ducc>,
    K: FromValue<'ducc>,
    L: FromValue<'ducc>,
    M: FromValue<'ducc>,
    N: FromValue<'ducc>,
    O: FromValue<'ducc>,
    P: FromValue<'ducc>,
    VAR: FromValue<'ducc>, 
[src]

Loading content...

Implementors

impl<'ducc> FromValues<'ducc> for Values<'ducc>[src]

impl<'ducc, T: FromValue<'ducc>> FromValues<'ducc> for Variadic<T>[src]

Loading content...