Trait rquickjs_core::FromJs

source ·
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> FromJs<'js> for i64

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, 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> FromJs<'js> for u64

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> FromJs<'js> for bool

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> FromJs<'js> for SystemTime

source§

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

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 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, 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> 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, 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, 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 i16

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> FromJs<'js> for DateTime<Utc>

source§

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

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, 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, 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> FromJs<'js> for f64

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 DateTime<Local>

source§

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

source§

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

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, 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, 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, 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, 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> FromJs<'js> for i32

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> FromJs<'js> for StdString

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, 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> FromJs<'js> for ()

Convert from JS as any

source§

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

Implementors§

source§

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

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<StdString>

Coerce a value to a string 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 Constructor<'js>

source§

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

source§

impl<'js> FromJs<'js> for Object<'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, A> FromJs<'js> for List<(A,)>where A: FromJs<'js>,

source§

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

source§

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

source§

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

source§

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

source§

impl<'js, A, B, C, D, E, F> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I, J> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I, J, K> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I, J, K, L> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O> FromJs<'js> for List<(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§

impl<'js, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P> FromJs<'js> for List<(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§

impl<'js, C: JsClass<'js>> FromJs<'js> for Class<'js, C>

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 TypedArray<'js, T>where T: TypedArrayItem,

source§

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

Convert from JS as result

source§

impl<'js, T, R> FromJs<'js> for Persistent<R>where R: Outlive<'static, Target<'js> = T>, T: Outlive<'js, Target<'static> = R> + FromJs<'js>,

source§

impl<'js, T: JsClass<'js>> FromJs<'js> for OwnedBorrow<'js, T>

source§

impl<'js, T: JsClass<'js>> FromJs<'js> for OwnedBorrowMut<'js, T>