pub struct RuntimeOptions {
    pub js_error_create_fn: Option<Rc<JsErrorCreateFn>>,
    pub get_error_class_fn: Option<GetErrorClassFn>,
    pub module_loader: Option<Rc<dyn ModuleLoader>>,
    pub extensions: Vec<Extension>,
    pub startup_snapshot: Option<Snapshot>,
    pub will_snapshot: bool,
    pub create_params: Option<CreateParams>,
    pub v8_platform: Option<SharedRef<Platform>>,
    pub shared_array_buffer_store: Option<SharedArrayBufferStore>,
    pub compiled_wasm_module_store: Option<CompiledWasmModuleStore>,
}

Fields

js_error_create_fn: Option<Rc<JsErrorCreateFn>>

Allows a callback to be set whenever a V8 exception is made. This allows the caller to wrap the JsError into an error. By default this callback is set to JsError::create().

get_error_class_fn: Option<GetErrorClassFn>

Allows to map error type to a string “class” used to represent error in JavaScript.

module_loader: Option<Rc<dyn ModuleLoader>>

Implementation of ModuleLoader which will be called when V8 requests to load ES modules.

If not provided runtime will error if code being executed tries to load modules.

extensions: Vec<Extension>

JsRuntime extensions, not to be confused with ES modules these are sets of ops and other JS code to be initialized.

startup_snapshot: Option<Snapshot>

V8 snapshot that should be loaded on startup.

Currently can’t be used with will_snapshot.

will_snapshot: bool

Prepare runtime to take snapshot of loaded code.

Currently can’t be used with startup_snapshot.

create_params: Option<CreateParams>

Isolate creation parameters.

v8_platform: Option<SharedRef<Platform>>

V8 platform instance to use. Used when Deno initializes V8 (which it only does once), otherwise it’s silenty dropped.

shared_array_buffer_store: Option<SharedArrayBufferStore>

The store to use for transferring SharedArrayBuffers between isolates. If multiple isolates should have the possibility of sharing SharedArrayBuffers, they should use the same SharedArrayBufferStore. If no SharedArrayBufferStore is specified, SharedArrayBuffer can not be serialized.

compiled_wasm_module_store: Option<CompiledWasmModuleStore>

The store to use for transferring WebAssembly.Module objects between isolates. If multiple isolates should have the possibility of sharing WebAssembly.Module objects, they should use the same CompiledWasmModuleStore. If no CompiledWasmModuleStore is specified, WebAssembly.Module objects cannot be serialized.

Trait Implementations

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.