Commit Graph

146 Commits

Author SHA1 Message Date
Boris Zbarsky
74a89ac0f7 Bug 965927. [StoreInSlot] and [Cached] getters should use the reflector as the scope obj when wrapping the return value. r=peterv 2014-02-06 21:08:29 -05:00
Boris Zbarsky
448f681d4d Bug 958667 part 5. Hook up AvailableIn for interface members. r=peterv 2014-02-05 13:38:17 -05:00
Boris Zbarsky
98d70e885a Bug 963321 part 2. Add codegen support for [Cached] dictionary attributes. r=khuey 2014-02-05 13:38:16 -05:00
Boris Zbarsky
e223f9691c Bug 949501. Make nullable unions that are isMember stop claiming to have a holder. r=dzbarsky 2013-12-18 11:20:43 -05:00
Boris Zbarsky
4ce8a99131 Bug 949682 part 1. Add a [Frozen] annotation on WebIDL attributes that have sequence types. r=peterv 2013-12-16 13:06:35 -05:00
Boris Zbarsky
b1c250a89f Bug 947351. [Constant] things don't need a way to clear a cached value, since they're not supposed to change. r=peterv 2013-12-06 13:49:44 -05:00
Boris Zbarsky
0e8c9f6887 Bug 946909. For a [Cached] or [StoreInSlot] attribute with a setter, clear the cache on set. r=peterv 2013-12-05 16:31:04 -05:00
Boris Zbarsky
8eccd295bf Bug 946898. Make sure to not accidentally store COWs in the slot for [Cached] properties. r=peterv 2013-12-05 16:07:33 -05:00
Boris Zbarsky
e330cbbc35 Bug 949271. Fix callback and JS-implemented codegen for sequence-of-union and variadic-union arguments. r=smaug 2013-12-12 16:11:56 -05:00
Boris Zbarsky
109a5700f1 Bug 945788. Add support for dictionary return values to example codegen and js-implemented codegen. r=smaug 2013-12-05 11:39:50 -05:00
Boris Zbarsky
2ccbfd5863 Bug 942631 part 4. Allow WebIDL attributes to return a sequence if it's cached. r=peterv 2013-12-04 08:02:18 -05:00
Boris Zbarsky
f916e39018 Bug 942631 part 1. Add support for a [Cached] WebIDL annotation. r=peterv 2013-12-04 08:02:17 -05:00
Kyle Huey
f8c3be104e Bug 919885: Move Worker to WebIDL and thread-agnostic event dispatch. r=bent,bz 2013-11-05 22:16:24 +08:00
Boris Zbarsky
7690d94087 Bug 882541 part 4. Treat undefined as missing for optional WebIDL arguments. r=khuey,ms2ger 2013-10-11 12:28:24 -04:00
Boris Zbarsky
b4b08a6e79 Bug 882541 part 3. Rework the overload resolution algorithm to WebIDL spec changes in handling of optional arguments. r=khuey
The major changes are as follows:

1) The new algorithm no longer adjusts "argcount" based on the
   interaction of trailing undefined and [TreatUndefinedAs=Missing]
   arguments.  We never implemented this; just asserted that we didn't
   have to deal with this situation.

2) If the distinguishing argument is undefined and there is an
   overload that has an optional argument at the distinguishing
   argument index, that overload is selected.
2013-10-11 12:28:24 -04:00
Boris Zbarsky
c0b03f21a5 Bug 882541 part 2. Fix a bug that crept in with overloading a string and a nullable number and then passing in null, due to the number conversion being conditional on the input type in that case. r=khuey
Also removes a footgun conversion operator on Nullable that was causing it to silently convert to int32_t.
2013-10-11 12:28:23 -04:00
Boris Zbarsky
77ea872b8d Bug 929512. Fix null default values for non-nullable unions containing a nullable type. r=dzbarsky, r=smaug pending 2013-10-28 00:33:15 -04:00
Ryan VanderMeulen
a80b1ea22a Backed out 2 changesets (bug 915757, bug 919885) for frequent Android Armv6 mochitest-8 crashes.
Backed out changeset 04610078280c (bug 915757)
Backed out changeset db9190b3ce60 (bug 919885)
2013-10-14 14:38:54 -04:00
Ed Morley
d9879cd4ec Merge latest green inbound changeset and mozilla-central 2013-10-14 17:39:02 +01:00
Ed Morley
b578555c28 Backed out changeset d8636e485e85 (bug 882541) 2013-10-14 17:30:49 +01:00
Ed Morley
225d596527 Backed out changeset 61092280cb2a (bug 882541) 2013-10-14 17:30:46 +01:00
Ed Morley
da83085a5c Backed out changeset ccf11ae08ba2 (bug 882541) 2013-10-14 17:30:43 +01:00
Kyle Huey
c3788e3653 Bug 919885: Move Worker to WebIDL and thread-agnostic event dispatch. r=bent,bz 2013-10-14 19:58:05 +08:00
Phil Ringnalda
95093a98d7 Backed out 2 changesets (bug 915757, bug 919885) for xpcshell bustage
Backed out changeset 5d17d90b838d (bug 915757)
Backed out changeset 91495d3a91c8 (bug 919885)
2013-10-13 21:59:58 -07:00
Kyle Huey
05cac7d21a Bug 919885: Move Worker to WebIDL and thread-agnostic event dispatch. r=bent,bz 2013-10-14 11:10:43 +08:00
Boris Zbarsky
316fae665f Bug 882541 part 4. Treat undefined as missing for optional WebIDL arguments. r=khuey,ms2ger 2013-10-11 12:28:24 -04:00
Boris Zbarsky
97cf5fdfe4 Bug 882541 part 3. Rework the overload resolution algorithm to WebIDL spec changes in handling of optional arguments. r=khuey
The major changes are as follows:

1) The new algorithm no longer adjusts "argcount" based on the
   interaction of trailing undefined and [TreatUndefinedAs=Missing]
   arguments.  We never implemented this; just asserted that we didn't
   have to deal with this situation.

2) If the distinguishing argument is undefined and there is an
   overload that has an optional argument at the distinguishing
   argument index, that overload is selected.
2013-10-11 12:28:24 -04:00
Boris Zbarsky
093911dd1c Bug 882541 part 2. Fix a bug that crept in with overloading a string and a nullable number and then passing in null, due to the number conversion being conditional on the input type in that case. r=khuey
Also removes a footgun conversion operator on Nullable that was causing it to silently convert to int32_t.
2013-10-11 12:28:23 -04:00
Boris Zbarsky
6195bac64d Bug 817194. Make WebIDL dictionary types sanely initialized by default; add a new Fast subclass to handle cases when we can skip the initialization safely. r=khuey 2013-10-09 12:05:22 -04:00
Ed Morley
b29a404ca7 Backed out changeset 8fa0cbe4a54d (bug 817194) for build failures 2013-10-09 17:48:13 +01:00
Boris Zbarsky
cd528c76db Bug 817194. Make WebIDL dictionary types sanely initialized by default; add a new Fast subclass to handle cases when we can skip the initialization safely. r=khuey 2013-10-09 12:05:22 -04:00
Boris Zbarsky
0eb0be4a04 Bug 918011 part 4. Support dictionaries in unions. r=smaug 2013-09-26 00:05:00 -04:00
Boris Zbarsky
5ffa4d1286 Bug 918011 part 2. Preprocess some of our test WebIDL files so we can have debug-only tests. r=khuey 2013-09-26 00:05:00 -04:00
Boris Zbarsky
9cc662a2d6 Bug 915971. Rename FooReturnValue unions to OwningFoo, because we use them for more than just return values. r=dzbarsky 2013-09-17 11:16:02 -04:00
Boris Zbarsky
b0ce18e505 Bug 915419. Add support for "object" types in owning unions (so union return values and unions in dictionaries and sequences. r=dzbarsky, smaug
Adds RootedUnion and NullableRootedUnion structs that are used on the
stack for union return values when the union needs rooting.  It also
adds a TraceUnion method on union return values, which is called by
(Nullable)RootedUnion or by dictionary tracing.  TraceUnion traces
typed array and object members of unions (the only things unions can
contain so far that might need tracing).  Union return values are
changed to store raw JSObject* or typed array structs instead of
Rooted versions of both; the tracing is now handled via TraceUnion.

The wrapping code for dictionary arguments to constructors is fixed to
actually work.  This required adding GetAs* methods to union return
values that return references to the internal data.

The SetToObject method is adjusted to actually work for union return
value structs and not assume it's being generated for a
union-conversion struct, and we now generate SetToObject methods as
needed for union return values.
2013-09-12 22:34:16 -04:00
Boris Zbarsky
84d48a8c9f Bug 912948 part 2. Add support for [Clamp] and [EnforceRange] on writable attributes. r=khuey 2013-09-09 22:10:45 -04:00
David Zbarsky
426663fc36 Bug 903277. Support default values other than null for WebIDL unions. r=bzbarsky 2013-08-29 23:29:38 -04:00
Boris Zbarsky
e077229d95 Bug 868799 part 3. Use RootedTypedArray in codegen. r=smaug 2013-08-29 00:30:05 -04:00
Ms2ger
c590a6ce46 Bug 903778 - Move dom::Date into its own files; r=khuey 2013-08-22 08:30:38 +02:00
Boris Zbarsky
3a9063d67a Bug 900898 part 4. Support typed arrays inside sequences and variadics. r=smaug 2013-08-05 13:40:02 -04:00
Boris Zbarsky
82ba945cef Bug 900898 part 2. Move to using Nullable<TypedArray> to represent possibly-null TypedArray structs. r=smaug 2013-08-05 13:40:01 -04:00
Ryan VanderMeulen
2a93f2cff1 Merge m-c to inbound. 2013-07-30 15:41:57 -04:00
Mina Almasry
cb2423ca33 Bug 897185 - toJSON only deals with attributes whose types are serializable. r=bz
Now jsonifiers only include serializable attributes in their returned object, as
per spec.
2013-07-30 10:04:04 -04:00
Boris Zbarsky
d05c7d0e2f Bug 895728 part 3. Fix overload resolution to work with the new boolean/numeric/string setup. r=khuey 2013-07-30 10:39:34 -07:00
David Zbarsky
a4a3a95214 Bug 865998: Implement WebIDL union return values r=bz 2013-07-26 11:25:54 -07:00
Boris Zbarsky
76a7d33bf7 Bug 895009. Don't pass in NonNull/OwningNonNull arguments to WebIDL binding consumers. r=peterv 2013-07-22 08:15:43 -04:00
Ryan VanderMeulen
4033000ea2 Backed out changesets 0a196c0e9f96 (bug 895974) and 0d8aa14f5ed3 (bug 895009) for causing intermittent Linux32 mochitest-1 asserts on a CLOSED TREE. 2013-07-22 18:18:17 -04:00
Boris Zbarsky
a0654061a1 Bug 895009. Don't pass in NonNull/OwningNonNull arguments to WebIDL binding consumers. r=peterv 2013-07-22 08:15:43 -04:00
Boris Zbarsky
520e6c7b89 Bug 884373. Align WebIDL handling of default parameters with ES6. r=khuey 2013-06-26 10:59:46 -04:00
James Kitchener
6d46bd7a62 Bug 796850 - Implement Code Generation for Bytestring in WebIDL bindings r=bz 2013-06-13 01:18:35 -04:00