pub type ReadTransferStructuredCloneOp = Option<unsafe extern "C" fn(_: *mut JSContext, _: *mut JSStructuredCloneReader, _: u32, _: *mut c_void, _: u64, _: *mut c_void, _: MutableHandle<*mut JSObject>) -> bool>;
Expand description

This is called when JS_ReadStructuredClone receives a transferable object not known to the engine. If this hook does not exist or returns false, the JS engine calls the reportError op if set, otherwise it throws a DATA_CLONE_ERR DOM Exception. This method is called before any other callback and must return a non-null object in returnObject on success.

If this readTransfer() hook is called and produces an object, then the read() hook will not be called for the same object, since the main data will only contain a backreference to the already-read object.

Aliased Type§

enum ReadTransferStructuredCloneOp {
    None,
    Some(unsafe extern "C" fn(_: *mut JSContext, _: *mut JSStructuredCloneReader, _: u32, _: *mut c_void, _: u64, _: *mut c_void, _: MutableHandle<*mut JSObject>) -> bool),
}

Variants§

§1.0.0

None

No value.

§1.0.0

Some(unsafe extern "C" fn(_: *mut JSContext, _: *mut JSStructuredCloneReader, _: u32, _: *mut c_void, _: u64, _: *mut c_void, _: MutableHandle<*mut JSObject>) -> bool)

Some value of type T.

Trait Implementations§

source§

impl<T: CustomTrace> CustomTrace for Option<T>

source§

impl<T: FromJSValConvertible> FromJSValConvertible for Option<T>

§

type Config = <T as FromJSValConvertible>::Config

Optional configurable behaviour switch; use () for no configuration.
source§

unsafe fn from_jsval( cx: *mut JSContext, value: HandleValue<'_>, option: T::Config ) -> Result<ConversionResult<Option<T>>, ()>

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.
source§

impl<T: ToJSValConvertible> ToJSValConvertible for Option<T>

source§

unsafe fn to_jsval(&self, cx: *mut JSContext, rval: MutableHandleValue<'_>)

Convert self to a JSVal. JSAPI failure causes a panic.
source§

impl<T: Traceable> Traceable for Option<T>

source§

unsafe fn trace(&self, trc: *mut JSTracer)

Trace self.