Trait mozjs::conversions::FromJSValConvertible
[−]
[src]
pub trait FromJSValConvertible: Sized { type Config; unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: Self::Config
) -> Result<ConversionResult<Self>, ()>; }
A trait to convert JSVal
s to Rust types.
Associated Types
type Config
Optional configurable behaviour switch; use () for no configuration.
Required Methods
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: Self::Config
) -> Result<ConversionResult<Self>, ()>
cx: *mut JSContext,
val: HandleValue,
option: Self::Config
) -> Result<ConversionResult<Self>, ()>
Convert val
to type Self
.
Optional configuration of type T
can be passed as the option
argument.
If it returns Err(())
, a JSAPI exception is pending.
If it returns Ok(Failure(reason))
, there is no pending JSAPI exception.
Implementations on Foreign Types
impl FromJSValConvertible for bool
[src]
type Config = ()
unsafe fn from_jsval(
_cx: *mut JSContext,
val: HandleValue,
_option: ()
) -> Result<ConversionResult<bool>, ()>
[src]
_cx: *mut JSContext,
val: HandleValue,
_option: ()
) -> Result<ConversionResult<bool>, ()>
impl FromJSValConvertible for i8
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i8>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i8>, ()>
impl FromJSValConvertible for u8
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u8>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u8>, ()>
impl FromJSValConvertible for i16
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i16>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i16>, ()>
impl FromJSValConvertible for u16
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u16>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u16>, ()>
impl FromJSValConvertible for i32
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i32>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i32>, ()>
impl FromJSValConvertible for u32
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u32>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u32>, ()>
impl FromJSValConvertible for i64
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i64>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<i64>, ()>
impl FromJSValConvertible for u64
[src]
type Config = ConversionBehavior
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u64>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
option: ConversionBehavior
) -> Result<ConversionResult<u64>, ()>
impl FromJSValConvertible for f32
[src]
type Config = ()
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
_option: ()
) -> Result<ConversionResult<f32>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
_option: ()
) -> Result<ConversionResult<f32>, ()>
impl FromJSValConvertible for f64
[src]
type Config = ()
unsafe fn from_jsval(
cx: *mut JSContext,
val: HandleValue,
_option: ()
) -> Result<ConversionResult<f64>, ()>
[src]
cx: *mut JSContext,
val: HandleValue,
_option: ()
) -> Result<ConversionResult<f64>, ()>
impl FromJSValConvertible for String
[src]
type Config = ()
unsafe fn from_jsval(
cx: *mut JSContext,
value: HandleValue,
_: ()
) -> Result<ConversionResult<String>, ()>
[src]
cx: *mut JSContext,
value: HandleValue,
_: ()
) -> Result<ConversionResult<String>, ()>
impl<T: FromJSValConvertible> FromJSValConvertible for Option<T>
[src]
type Config = T::Config
unsafe fn from_jsval(
cx: *mut JSContext,
value: HandleValue,
option: T::Config
) -> Result<ConversionResult<Option<T>>, ()>
[src]
cx: *mut JSContext,
value: HandleValue,
option: T::Config
) -> Result<ConversionResult<Option<T>>, ()>
impl<C: Clone, T: FromJSValConvertible<Config = C>> FromJSValConvertible for Vec<T>
[src]
type Config = C
unsafe fn from_jsval(
cx: *mut JSContext,
value: HandleValue,
option: C
) -> Result<ConversionResult<Vec<T>>, ()>
[src]
cx: *mut JSContext,
value: HandleValue,
option: C
) -> Result<ConversionResult<Vec<T>>, ()>
impl FromJSValConvertible for *mut JSObject
[src]
type Config = ()
unsafe fn from_jsval(
cx: *mut JSContext,
value: HandleValue,
_option: ()
) -> Result<ConversionResult<*mut JSObject>, ()>
[src]
cx: *mut JSContext,
value: HandleValue,
_option: ()
) -> Result<ConversionResult<*mut JSObject>, ()>