Struct deno_runtime::worker::WorkerOptions
source · pub struct WorkerOptions {Show 25 fields
pub bootstrap: BootstrapOptions,
pub extensions: Vec<Extension>,
pub extensions_with_js: Vec<Extension>,
pub startup_snapshot: Option<Snapshot>,
pub unsafely_ignore_certificate_errors: Option<Vec<String>>,
pub root_cert_store: Option<RootCertStore>,
pub seed: Option<u64>,
pub module_loader: Rc<dyn ModuleLoader>,
pub npm_resolver: Option<Rc<dyn RequireNpmResolver>>,
pub create_web_worker_cb: Arc<CreateWebWorkerCb>,
pub web_worker_preload_module_cb: Arc<WorkerEventCb>,
pub web_worker_pre_execute_module_cb: Arc<WorkerEventCb>,
pub format_js_error_fn: Option<Arc<FormatJsErrorFn>>,
pub source_map_getter: Option<Box<dyn SourceMapGetter>>,
pub maybe_inspector_server: Option<Arc<InspectorServer>>,
pub should_break_on_first_statement: bool,
pub should_wait_for_inspector_session: bool,
pub get_error_class_fn: Option<GetErrorClassFn>,
pub cache_storage_dir: Option<PathBuf>,
pub origin_storage_dir: Option<PathBuf>,
pub blob_store: BlobStore,
pub broadcast_channel: InMemoryBroadcastChannel,
pub shared_array_buffer_store: Option<SharedArrayBufferStore>,
pub compiled_wasm_module_store: Option<CompiledWasmModuleStore>,
pub stdio: Stdio,
}
Fields§
§bootstrap: BootstrapOptions
§extensions: Vec<Extension>
JsRuntime extensions, not to be confused with ES modules.
Only ops registered by extensions will be initialized. If you need
to execute JS code from extensions, use extensions_with_js
options
instead.
extensions_with_js: Vec<Extension>
JsRuntime extensions, not to be confused with ES modules.
Ops registered by extensions will be initialized and JS code will be
executed. If you don’t need to execute JS code from extensions, use
extensions
option instead.
This is useful when creating snapshots, in such case you would pass
extensions using extensions_with_js
, later when creating a runtime
from the snapshot, you would pass these extensions using extensions
option.
startup_snapshot: Option<Snapshot>
V8 snapshot that should be loaded on startup.
unsafely_ignore_certificate_errors: Option<Vec<String>>
§root_cert_store: Option<RootCertStore>
§seed: Option<u64>
§module_loader: 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.
npm_resolver: Option<Rc<dyn RequireNpmResolver>>
§create_web_worker_cb: Arc<CreateWebWorkerCb>
§web_worker_preload_module_cb: Arc<WorkerEventCb>
§web_worker_pre_execute_module_cb: Arc<WorkerEventCb>
§format_js_error_fn: Option<Arc<FormatJsErrorFn>>
§source_map_getter: Option<Box<dyn SourceMapGetter>>
Source map reference for errors.
maybe_inspector_server: Option<Arc<InspectorServer>>
§should_break_on_first_statement: bool
§should_wait_for_inspector_session: bool
§get_error_class_fn: Option<GetErrorClassFn>
Allows to map error type to a string “class” used to represent error in JavaScript.
cache_storage_dir: Option<PathBuf>
§origin_storage_dir: Option<PathBuf>
§blob_store: BlobStore
§broadcast_channel: InMemoryBroadcastChannel
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.
stdio: Stdio