summaryrefslogtreecommitdiffstats
path: root/dom/webidl
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@wolfbeast.com>2019-12-19 03:05:45 +0100
committerwolfbeast <mcwerewolf@wolfbeast.com>2019-12-19 03:05:45 +0100
commitd461262405813f0721f9dbb2ff57b9f82e5f9b65 (patch)
treea9c5fce75bb1a120925c27b1de4461403213794d /dom/webidl
parentcdea310f1796c1ea5ffa5b49a06fcda914ea9ecb (diff)
downloadUXP-d461262405813f0721f9dbb2ff57b9f82e5f9b65.tar
UXP-d461262405813f0721f9dbb2ff57b9f82e5f9b65.tar.gz
UXP-d461262405813f0721f9dbb2ff57b9f82e5f9b65.tar.lz
UXP-d461262405813f0721f9dbb2ff57b9f82e5f9b65.tar.xz
UXP-d461262405813f0721f9dbb2ff57b9f82e5f9b65.zip
Issue #1322 - Part 3: Remove DOM promise interface gunk
Based on work by Boris Zbarsky
Diffstat (limited to 'dom/webidl')
-rw-r--r--dom/webidl/Promise.webidl17
-rw-r--r--dom/webidl/TestInterfaceJS.webidl2
2 files changed, 3 insertions, 16 deletions
diff --git a/dom/webidl/Promise.webidl b/dom/webidl/Promise.webidl
index 65b406b6f..a296553df 100644
--- a/dom/webidl/Promise.webidl
+++ b/dom/webidl/Promise.webidl
@@ -3,28 +3,15 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The origin of this IDL file is
- * http://dom.spec.whatwg.org/#promises
+ * This IDL file contains utilities to help connect JS promises to our
+ * Web IDL infrastructure.
*/
-// TODO We use object instead Function. There is an open issue on WebIDL to
-// have different types for "platform-provided function" and "user-provided
-// function"; for now, we just use "object".
-callback PromiseInit = void (object resolve, object reject);
-
callback PromiseJobCallback = void();
[TreatNonCallableAsNull]
callback AnyCallback = any (any value);
-// Promises are implemented in SpiderMonkey; just define a tiny interface to make
-// codegen of Promise arguments and return values work.
-[NoInterfaceObject,
- Exposed=(Window,Worker,WorkerDebugger,System)]
-// Need to escape "Promise" so it's treated as an identifier.
-interface _Promise {
-};
-
// Hack to allow us to have JS owning and properly tracing/CCing/etc a
// PromiseNativeHandler.
[NoInterfaceObject,
diff --git a/dom/webidl/TestInterfaceJS.webidl b/dom/webidl/TestInterfaceJS.webidl
index 2cf8d701a..2757745f0 100644
--- a/dom/webidl/TestInterfaceJS.webidl
+++ b/dom/webidl/TestInterfaceJS.webidl
@@ -70,7 +70,7 @@ interface TestInterfaceJS : EventTarget {
// Tests for promise-rejection behavior
Promise<void> testPromiseWithThrowingChromePromiseInit();
- Promise<void> testPromiseWithThrowingContentPromiseInit(PromiseInit func);
+ Promise<void> testPromiseWithThrowingContentPromiseInit(Function func);
Promise<void> testPromiseWithDOMExceptionThrowingPromiseInit();
Promise<void> testPromiseWithThrowingChromeThenFunction();
Promise<void> testPromiseWithThrowingContentThenFunction(AnyCallback func);