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

Called when JS_WriteStructuredClone receives a transferable object not handled by the engine. If this hook does not exist or returns false, the JS engine will call the reportError hook or fall back to throwing a DATA_CLONE_ERR DOM Exception. This method is called before any other callback.

tag: indicates what type of transferable this is. Must be greater than 0xFFFF0201 (value of the internal SCTAG_TRANSFER_MAP_PENDING_ENTRY)

ownership: see TransferableOwnership, above. Used to communicate any needed ownership info to the FreeTransferStructuredCloneOp.

content, extraData: what the ReadTransferStructuredCloneOp will receive

Aliased Type§

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

Variants§

§1.0.0

None

No value.

§1.0.0

Some(unsafe extern "C" fn(_: *mut JSContext, _: Handle<*mut JSObject>, _: *mut c_void, _: *mut u32, _: *mut TransferableOwnership, _: *mut *mut c_void, _: *mut u64) -> 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.