pub trait FromJs<'js>: Sized {
    // Required method
    fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>;
}
Expand description

For converting javascript values to rust values

This trait automatically converts any value which can be represented as an object, like Array to one if it is required.

Required Methods§

source

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

Implementations on Foreign Types§

source§

impl<'js, T, S> FromJs<'js> for IndexSet<T, S>where T: FromJs<'js> + Eq + Hash, S: Default + BuildHasher,

Available on crate feature indexmap only.

Convert from JS array to Rust index set

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A, B, C, D, E, F> FromJs<'js> for (A, B, C, D, E, F)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>, D: FromJs<'js>, E: FromJs<'js>, F: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for Box<T>where T: FromJs<'js>,

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A, B, C, D, E, F, G, H, I, J> FromJs<'js> for (A, B, C, D, E, F, G, H, I, J)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>, D: FromJs<'js>, E: FromJs<'js>, F: FromJs<'js>, G: FromJs<'js>, H: FromJs<'js>, I: FromJs<'js>, J: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, K, V> FromJs<'js> for BTreeMap<K, V>where K: FromAtom<'js> + Eq + Ord, V: FromJs<'js>,

Convert from JS object to Rust btree map

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for VecDeque<T>where T: FromJs<'js>,

Convert from JS array to Rust vector deque

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for DateTime<Utc>

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<DateTime<Utc>>

source§

impl<'js, K, V, S> FromJs<'js> for IndexMap<K, V, S>where K: FromAtom<'js> + Eq + Hash, V: FromJs<'js>, S: Default + BuildHasher,

Available on crate feature indexmap only.

Convert from JS object to Rust index map

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A> FromJs<'js> for (A,)where A: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

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

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for Mutex<T>where T: FromJs<'js>,

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for LinkedList<T>where T: FromJs<'js>,

Convert from JS array to Rust linked list

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for Option<T>where T: FromJs<'js>,

Convert from JS as optional

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for i64

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, K, V, S> FromJs<'js> for HashMap<K, V, S>where K: FromAtom<'js> + Eq + Hash, V: FromJs<'js>, S: Default + BuildHasher,

Convert from JS object to Rust hash map

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

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

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A, B, C, D> FromJs<'js> for (A, B, C, D)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>, D: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for StdString

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A, B, C, D, E, F, G, H, I> FromJs<'js> for (A, B, C, D, E, F, G, H, I)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>, D: FromJs<'js>, E: FromJs<'js>, F: FromJs<'js>, G: FromJs<'js>, H: FromJs<'js>, I: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for usize

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for RefCell<T>where T: FromJs<'js>,

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for SystemTime

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<SystemTime>

source§

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

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for f64

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for f32

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for ()

Convert from JS as any

source§

fn from_js(_: Ctx<'js>, _: Value<'js>) -> Result<Self>

source§

impl<'js, A, B> FromJs<'js> for (A, B)where A: FromJs<'js>, B: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for Arc<T>where T: FromJs<'js>,

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for u16

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for i8

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

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

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A, B, C, D, E, F, G> FromJs<'js> for (A, B, C, D, E, F, G)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>, D: FromJs<'js>, E: FromJs<'js>, F: FromJs<'js>, G: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for Rc<T>where T: FromJs<'js>,

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for Vec<T>where T: FromJs<'js>,

Convert from JS array to Rust vector

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for DateTime<Local>

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<DateTime<Local>>

source§

impl<'js, A, B, C, D, E> FromJs<'js> for (A, B, C, D, E)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>, D: FromJs<'js>, E: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for u32

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A, B, C> FromJs<'js> for (A, B, C)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for bool

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

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

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, L, R> FromJs<'js> for Either<L, R>where L: FromJs<'js>, R: FromJs<'js>,

Available on crate feature either only.

Convert from JS to either

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for u64

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for i32

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for Cell<T>where T: FromJs<'js>,

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for RwLock<T>where T: FromJs<'js>,

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, A, B, C, D, E, F, G, H> FromJs<'js> for (A, B, C, D, E, F, G, H)where A: FromJs<'js>, B: FromJs<'js>, C: FromJs<'js>, D: FromJs<'js>, E: FromJs<'js>, F: FromJs<'js>, G: FromJs<'js>, H: FromJs<'js>,

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for isize

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T, S> FromJs<'js> for HashSet<T, S>where T: FromJs<'js> + Eq + Hash, S: Default + BuildHasher,

Convert from JS array to Rust hash set

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for u8

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js, T> FromJs<'js> for BTreeSet<T>where T: FromJs<'js> + Eq + Ord,

Convert from JS array to Rust btree set

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

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

source§

fn from_js(_ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

source§

impl<'js> FromJs<'js> for i16

source§

fn from_js(ctx: Ctx<'js>, value: Value<'js>) -> Result<Self>

Implementors§

source§

impl<'js> FromJs<'js> for Coerced<bool>

Coerce a value to a bool in the same way javascript would coerce values

source§

impl<'js> FromJs<'js> for Coerced<f64>

Coerce a value to a f64 in the same way javascript would coerce values

source§

impl<'js> FromJs<'js> for Coerced<i32>

Coerce a value to a i32 in the same way javascript would coerce values

source§

impl<'js> FromJs<'js> for Coerced<i64>

Coerce a value to a i64 in the same way javascript would coerce values

source§

impl<'js> FromJs<'js> for Coerced<u64>

Coerce a value to a u64 in the same way javascript would coerce values

source§

impl<'js> FromJs<'js> for Coerced<String<'js>>

Coerce a value to a string in the same way javascript would coerce values.

source§

impl<'js> FromJs<'js> for Coerced<StdString>

Coerce a value to a string in the same way javascript would coerce values.

source§

impl<'js> FromJs<'js> for Function<'js>

source§

impl<'js> FromJs<'js> for Object<'js>

source§

impl<'js> FromJs<'js> for Array<'js>

source§

impl<'js> FromJs<'js> for ArrayBuffer<'js>

source§

impl<'js> FromJs<'js> for BigInt<'js>

source§

impl<'js> FromJs<'js> for Exception<'js>

source§

impl<'js> FromJs<'js> for Null

source§

impl<'js> FromJs<'js> for String<'js>

source§

impl<'js> FromJs<'js> for Symbol<'js>

source§

impl<'js> FromJs<'js> for Undefined

source§

impl<'js> FromJs<'js> for Value<'js>

source§

impl<'js, C> FromJs<'js> for Class<'js, C>where C: ClassDef,

Available on crate feature classes only.
source§

impl<'js, T> FromJs<'js> for Promise<'js, T>where T: FromJs<'js> + 'js,

Available on crate feature futures only.
source§

impl<'js, T> FromJs<'js> for Persistent<T>where T: Outlive<'js>, T::Target: FromJs<'js> + IntoJs<'js>,

source§

impl<'js, T> FromJs<'js> for TypedArray<'js, T>where T: TypedArrayItem,

source§

impl<'js, T> FromJs<'js> for Result<T>where T: FromJs<'js>,

Convert from JS as result