pub type ModuleDynamicImportHook = Option<unsafe extern "C" fn(_: *mut JSContext, _: Handle<Value>, _: Handle<*mut JSObject>, _: Handle<*mut JSObject>) -> bool>;
Expand description

The HostImportModuleDynamically hook.

See https://tc39.es/ecma262/#sec-hostimportmoduledynamically

Used to implement dynamic module import. Called when evaluating import() expressions.

This starts an asynchronous operation. Some time after this hook is called the embedding must call JS::FinishDynamicModuleImport() passing the |referencingPrivate|, |moduleRequest| and |promise| arguments from the call. This must happen for both success and failure cases.

In the meantime the embedding can take whatever steps it needs to make the module available. If successful, after calling FinishDynamicModuleImport() the module should be returned by the resolve hook when passed |referencingPrivate| and |moduleRequest|.

Aliased Type§

enum ModuleDynamicImportHook {
    None,
    Some(unsafe extern "C" fn(_: *mut JSContext, _: Handle<Value>, _: Handle<*mut JSObject>, _: Handle<*mut JSObject>) -> bool),
}

Variants§

§1.0.0

None

No value.

§1.0.0

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