mirror of
https://github.com/rustwasm/wasm-bindgen.git
synced 2024-12-28 20:43:23 +03:00
b8afa0abde
I think these might all be from before WebIDL mixins existed. Either way, multiple inheritance of interfaces that don't have exposed interface objects is equivalent to mixins.
33 lines
1.2 KiB
Plaintext
Vendored
33 lines
1.2 KiB
Plaintext
Vendored
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* 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/. */
|
|
|
|
enum DOMRequestReadyState { "pending", "done" };
|
|
|
|
[Exposed=(Window,Worker,System)]
|
|
interface mixin DOMRequestShared {
|
|
readonly attribute DOMRequestReadyState readyState;
|
|
|
|
readonly attribute any result;
|
|
readonly attribute DOMException? error;
|
|
|
|
attribute EventHandler onsuccess;
|
|
attribute EventHandler onerror;
|
|
};
|
|
|
|
[Exposed=(Window,Worker,System)]
|
|
interface DOMRequest : EventTarget {
|
|
// The [TreatNonCallableAsNull] annotation is required since then() should do
|
|
// nothing instead of throwing errors when non-callable arguments are passed.
|
|
// See documentation for Promise.then to see why we return "any".
|
|
[NewObject, Throws]
|
|
any then([TreatNonCallableAsNull] optional AnyCallback? fulfillCallback = null,
|
|
[TreatNonCallableAsNull] optional AnyCallback? rejectCallback = null);
|
|
|
|
[ChromeOnly]
|
|
void fireDetailedError(DOMException aError);
|
|
};
|
|
|
|
DOMRequest includes DOMRequestShared;
|