Worker.webidl (1525B)
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. 5 * 6 * The origin of this IDL file is 7 * https://html.spec.whatwg.org/multipage/workers.html 8 * 9 * © Copyright 2004-2011 Apple Computer, Inc., Mozilla Foundation, and Opera 10 * Software ASA. 11 * You are granted a license to use, reproduce and create derivative works of 12 * this document. 13 */ 14 15 [Exposed=(Window,DedicatedWorker,SharedWorker)] 16 interface Worker : EventTarget { 17 [Throws] 18 constructor((TrustedScriptURL or USVString) scriptURL, optional WorkerOptions options = {}); 19 20 undefined terminate(); 21 22 [Throws] 23 undefined postMessage(any message, sequence<object> transfer); 24 [Throws] 25 undefined postMessage(any message, optional StructuredSerializeOptions aOptions = {}); 26 27 attribute EventHandler onmessage; 28 attribute EventHandler onmessageerror; 29 }; 30 31 Worker includes AbstractWorker; 32 33 dictionary WorkerOptions { 34 WorkerType type = "classic"; 35 RequestCredentials credentials = "same-origin"; // credentials is only used if type is "module" 36 DOMString name = ""; 37 }; 38 39 enum WorkerType { "classic", "module" }; 40 41 [Func="mozilla::dom::ChromeWorker::WorkerAvailable", 42 Exposed=(Window,DedicatedWorker,SharedWorker)] 43 interface ChromeWorker : Worker { 44 [Throws] 45 constructor(USVString scriptURL, optional WorkerOptions options = {}); 46 };