diff options
author | Gaming4JC <g4jc@hyperbola.info> | 2020-01-04 10:28:38 -0500 |
---|---|---|
committer | Gaming4JC <g4jc@hyperbola.info> | 2020-01-26 15:50:14 -0500 |
commit | df23f78ad16b40c244f518dba28a8555d61bdd0c (patch) | |
tree | 0d0806f435a548df4dd2d2af0df531e93bd3bc77 /dom/bindings/test | |
parent | 20799ce18c18ff1ad3125ad4e8a7a679b57a858f (diff) | |
download | UXP-df23f78ad16b40c244f518dba28a8555d61bdd0c.tar UXP-df23f78ad16b40c244f518dba28a8555d61bdd0c.tar.gz UXP-df23f78ad16b40c244f518dba28a8555d61bdd0c.tar.lz UXP-df23f78ad16b40c244f518dba28a8555d61bdd0c.tar.xz UXP-df23f78ad16b40c244f518dba28a8555d61bdd0c.zip |
Bug 1309147 - Part 3: Implement the support for CEReactions in Codegen.
Tag UXP Issue #1344
Diffstat (limited to 'dom/bindings/test')
-rw-r--r-- | dom/bindings/test/TestBindingHeader.h | 24 | ||||
-rw-r--r-- | dom/bindings/test/TestCodeGen.webidl | 13 | ||||
-rw-r--r-- | dom/bindings/test/TestExampleGen.webidl | 4 | ||||
-rw-r--r-- | dom/bindings/test/TestJSImplGen.webidl | 4 |
4 files changed, 45 insertions, 0 deletions
diff --git a/dom/bindings/test/TestBindingHeader.h b/dom/bindings/test/TestBindingHeader.h index 9bd3e407f..7d9963700 100644 --- a/dom/bindings/test/TestBindingHeader.h +++ b/dom/bindings/test/TestBindingHeader.h @@ -939,6 +939,11 @@ public: void NeedsCallerTypeMethod(CallerType); bool NeedsCallerTypeAttr(CallerType); void SetNeedsCallerTypeAttr(bool, CallerType); + void CeReactionsMethod(); + void CeReactionsMethodOverload(); + void CeReactionsMethodOverload(const nsAString&); + bool CeReactionsAttr() const; + void SetCeReactionsAttr(bool); int16_t LegacyCall(const JS::Value&, uint32_t, TestInterface&); void PassArgsWithDefaults(JSContext*, const Optional<int32_t>&, TestInterface*, const Dict&, double, @@ -1431,6 +1436,25 @@ public: virtual nsISupports* GetParentObject(); }; +class TestCEReactionsInterface : public nsISupports, + public nsWrapperCache +{ +public: + NS_DECL_ISUPPORTS + + // We need a GetParentObject to make binding codegen happy + virtual nsISupports* GetParentObject(); + + int32_t Item(uint32_t); + uint32_t Length() const; + int32_t IndexedGetter(uint32_t, bool &); + void IndexedSetter(uint32_t, int32_t); + void NamedDeleter(const nsAString&, bool &); + void NamedGetter(const nsAString&, bool &, nsString&); + void NamedSetter(const nsAString&, const nsAString&); + void GetSupportedNames(nsTArray<nsString>&); +}; + } // namespace dom } // namespace mozilla diff --git a/dom/bindings/test/TestCodeGen.webidl b/dom/bindings/test/TestCodeGen.webidl index 35777f6aa..3fce5e21b 100644 --- a/dom/bindings/test/TestCodeGen.webidl +++ b/dom/bindings/test/TestCodeGen.webidl @@ -947,6 +947,10 @@ interface TestInterface { [NeedsSubjectPrincipal] attribute boolean needsSubjectPrincipalAttr; [NeedsCallerType] void needsCallerTypeMethod(); [NeedsCallerType] attribute boolean needsCallerTypeAttr; + [CEReactions] void ceReactionsMethod(); + [CEReactions] void ceReactionsMethodOverload(); + [CEReactions] void ceReactionsMethodOverload(DOMString bar); + [CEReactions] attribute boolean ceReactionsAttr; legacycaller short(unsigned long arg1, TestInterface arg2); void passArgsWithDefaults(optional long arg1, optional TestInterface? arg2 = null, @@ -1266,3 +1270,12 @@ interface TestWorkerExposedInterface { [HTMLConstructor] interface TestHTMLConstructorInterface { }; + +interface TestCEReactionsInterface { + [CEReactions] setter creator void (unsigned long index, long item); + [CEReactions] setter creator void (DOMString name, DOMString item); + [CEReactions] deleter void (DOMString name); + getter long item(unsigned long index); + getter DOMString (DOMString name); + readonly attribute unsigned long length; +}; diff --git a/dom/bindings/test/TestExampleGen.webidl b/dom/bindings/test/TestExampleGen.webidl index ea6387a84..a2183c002 100644 --- a/dom/bindings/test/TestExampleGen.webidl +++ b/dom/bindings/test/TestExampleGen.webidl @@ -777,6 +777,10 @@ interface TestExampleInterface { [NeedsSubjectPrincipal] attribute boolean needsSubjectPrincipalAttr; [NeedsCallerType] void needsCallerTypeMethod(); [NeedsCallerType] attribute boolean needsCallerTypeAttr; + [CEReactions] void ceReactionsMethod(); + [CEReactions] void ceReactionsMethodOverload(); + [CEReactions] void ceReactionsMethodOverload(DOMString bar); + [CEReactions] attribute boolean ceReactionsAttr; legacycaller short(unsigned long arg1, TestInterface arg2); void passArgsWithDefaults(optional long arg1, optional TestInterface? arg2 = null, diff --git a/dom/bindings/test/TestJSImplGen.webidl b/dom/bindings/test/TestJSImplGen.webidl index a131dcdfe..a133b9981 100644 --- a/dom/bindings/test/TestJSImplGen.webidl +++ b/dom/bindings/test/TestJSImplGen.webidl @@ -794,6 +794,10 @@ interface TestJSImplInterface { [Throws] attribute boolean throwingAttr; [GetterThrows] attribute boolean throwingGetterAttr; [SetterThrows] attribute boolean throwingSetterAttr; + [CEReactions] void ceReactionsMethod(); + [CEReactions] void ceReactionsMethodOverload(); + [CEReactions] void ceReactionsMethodOverload(DOMString bar); + [CEReactions] attribute boolean ceReactionsAttr; // NeedsSubjectPrincipal not supported on JS-implemented things for // now, because we always pass in the caller principal anyway. // [NeedsSubjectPrincipal] void needsSubjectPrincipalMethod(); |