diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2020-01-21 09:49:47 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-21 09:49:47 +0100 |
commit | 7966bf14c062a05b1606a62c996890571454ecc8 (patch) | |
tree | 65bede64b47707c3accc80d0bb18e99840c639f7 /cli/js/lib.deno_runtime.d.ts | |
parent | c90036ab88bb1ae6b9c87d5e368f56d8c8afab69 (diff) |
refactor: split worker and worker host logic (#3722)
* split ops/worker.rs into ops/worker_host.rs and ops/web_worker.rs
* refactor js/workers.ts and factor out js/worker_main.ts - entry point for WebWorker runtime
* BREAKING CHANGE: remove support for blob: URL in Worker
* BREAKING CHANGE: remove Deno namespace support and noDenoNamespace option in Worker constructor
* introduce WebWorker struct which is a stripped down version of cli::Worker
Diffstat (limited to 'cli/js/lib.deno_runtime.d.ts')
-rw-r--r-- | cli/js/lib.deno_runtime.d.ts | 35 |
1 files changed, 14 insertions, 21 deletions
diff --git a/cli/js/lib.deno_runtime.d.ts b/cli/js/lib.deno_runtime.d.ts index 0fa183348..05553ffb7 100644 --- a/cli/js/lib.deno_runtime.d.ts +++ b/cli/js/lib.deno_runtime.d.ts @@ -2128,9 +2128,9 @@ declare interface Window { performance: __performanceUtil.Performance; onmessage: (e: { data: any }) => void; onerror: undefined | typeof onerror; - workerMain: typeof __workers.workerMain; - workerClose: typeof __workers.workerClose; - postMessage: typeof __workers.postMessage; + workerMain: typeof __workerMain.workerMain; + workerClose: typeof __workerMain.workerClose; + postMessage: typeof __workerMain.postMessage; Worker: typeof __workers.WorkerImpl; addEventListener: ( type: string, @@ -2187,9 +2187,9 @@ declare let onerror: e: Event ) => boolean | void) | undefined; -declare const workerMain: typeof __workers.workerMain; -declare const workerClose: typeof __workers.workerClose; -declare const postMessage: typeof __workers.postMessage; +declare const workerMain: typeof __workerMain.workerMain; +declare const workerClose: typeof __workerMain.workerClose; +declare const postMessage: typeof __workerMain.postMessage; declare const Worker: typeof __workers.WorkerImpl; declare const addEventListener: ( type: string, @@ -3437,31 +3437,25 @@ declare namespace __url { }; } -declare namespace __workers { - // @url js/workers.d.ts - - export function encodeMessage(data: any): Uint8Array; - export function decodeMessage(dataIntArray: Uint8Array): any; +declare namespace __workerMain { export let onmessage: (e: { data: any }) => void; export function postMessage(data: any): void; export function getMessage(): Promise<any>; export let isClosing: boolean; export function workerClose(): void; export function workerMain(): Promise<void>; +} + +declare namespace __workers { + // @url js/workers.d.ts export interface Worker { onerror?: (e: Event) => void; onmessage?: (e: { data: any }) => void; onmessageerror?: () => void; postMessage(data: any): void; - closed: Promise<void>; } - export interface WorkerOptions {} - /** Extended Deno Worker initialization options. - * `noDenoNamespace` hides global `window.Deno` namespace for - * spawned worker and nested workers spawned by it (default: false). - */ - export interface DenoWorkerOptions extends WorkerOptions { - noDenoNamespace?: boolean; + export interface WorkerOptions { + type?: "classic" | "module"; } export class WorkerImpl implements Worker { private readonly id; @@ -3470,8 +3464,7 @@ declare namespace __workers { onerror?: (e: Event) => void; onmessage?: (data: any) => void; onmessageerror?: () => void; - constructor(specifier: string, options?: DenoWorkerOptions); - readonly closed: Promise<void>; + constructor(specifier: string, options?: WorkerOptions); postMessage(data: any): void; private run; } |