Commit Graph

114 Commits

Author SHA1 Message Date
Ed Morley
19dd19ed37 Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures 2013-01-28 11:08:21 +00:00
Peter Van der Beken
70a2f7c413 Fix for bug 816088 (webIDL bindings try to extract nsISupports from the global object in static properties in workers). r=bz.
--HG--
extra : rebase_source : 68e5630591f6209e2af9c5cd2321fed8edd3de24
2012-12-03 17:07:49 +01:00
Peter Van der Beken
e9af4de1e2 Fix for bug 827546 (|non editable element|.QueryInterface(Components.interfaces.nsIDOMNSEditableElement) does not throw anymore) - throw on QI failure. r=bz. 2013-01-14 11:29:49 +01:00
William Chen
ab40ccf0cf Bug 828532 - Removed 'prototype' as a reserved identifier in WebIDL. r=bz 2013-01-10 11:54:13 -08:00
Boris Zbarsky
c709838653 Bug 820665 part 3. WebIDL spec updates to changes in how callback interfaces work. r=khuey
Specifically, any object that's not a Date or RegExp can implement a callback interface.
2013-01-03 14:03:11 -05:00
Boris Zbarsky
e50920c5e4 Bug 820665 part 1. More WebIDL spec updates to changes in how dictionaries work. r=khuey
Specifically, the following changes:

1) A union that includes a dictionary and is the last non-optional
   argument must actually be marked optional, just like a dictionary
   argument.
2) Disallow a union from containing both a nullable type and a dictionary.
3) Now all non-Date and non-RegExp objects can be used as dictionaries,
   including from overload resolution and union conversion.

We don't support dictionaries inside unions yet, or unions as
distinguishing args, so the spec changes to do with converting null to
dictionaries inside a union or picking the union overload if there is
a union containing a dictionary and null is the distinguishing arg
value are not relevant to us so far.
2013-01-03 14:03:00 -05:00
Boris Zbarsky
a93cc6b13a Bug 821177. [TreatNonCallableAsNull] should only affect attribute setters. r=khuey 2013-01-02 22:03:25 -05:00
William Chen
f51cca1c06 Bug 820957 - Support object members in WebIDL dictionary. r=bz 2012-12-17 13:44:13 -08:00
William Chen
c349db0a4d Bug 820544 - Prefix WebIDL dictionary native member names to avoid C++ keywords. r=bz 2012-12-17 13:44:04 -08:00
Boris Zbarsky
2ee8d7b8b0 Bug 821438. Allow inheritance from interfaces with Unforgeable attributes. r=peterv 2012-12-14 14:10:50 -05:00
Ed Morley
fea5ff8037 Backout 67d84be0cc83 (bug 820544) for bustage 2012-12-14 16:58:51 +00:00
William Chen
98dfaef8d1 Bug 820544 - Prefix webidl dictionary native members names to avoid C++ keywords. r=bz 2012-12-11 16:05:46 -08:00
Boris Zbarsky
460b6811d8 Bug 759621 test. No review, test only. 2012-12-14 02:32:13 -05:00
Boris Zbarsky
64890dd7af Bug 815502. Implement support for variadic arguments in WebIDL. r=peterv 2012-12-11 17:50:56 -05:00
Boris Zbarsky
9902632717 Bug 767933 part 2. Implement codegen for 'unrestricted float' and 'unrestricted double', as aliases for float and double for now. r=khuey 2012-11-27 15:32:05 -05:00
Boris Zbarsky
e2971e3210 Bug 812742. Fix sequence codegen to not do AppendElement multiple times by accident. r=peterv 2012-11-27 15:20:40 -05:00
Boris Zbarsky
722d581206 Bug 809260. Example codegen should include ErrorResult.h in the header. r=mccr8 2012-11-09 08:24:32 -08:00
Boris Zbarsky
03231584a7 Bug 808698. Set up example codegen for proxy bindings to work correctly. r=jst 2012-11-09 08:24:32 -08:00
Boris Zbarsky
6d7bbe9aed Bug 779048 part 10. Start using the new callback codegen in argument and return value conversion. r=peterv,smaug 2012-11-09 07:43:58 -08:00
Boris Zbarsky
d745a9276e Bug 779048 part 8. Handling of arguments for callbacks. r=peterv
Note that we're now using the array object as the "obj" when wrapping
sequence members, because we don't have an 'obj' around in our
code... and every single existing sequence-of-interfaces consumer
relied on there being an 'obj' floating about.

Also note that I needed to rearrange the various wrapping helpers so
that we can wrap things that are hanging out in const smartpointers or
in const OwningNonNull or in plain object references.
2012-11-09 07:43:58 -08:00
Boris Zbarsky
7e2dca188e Bug 779048 part 6. Handling of return values for callbacks. r=peterv 2012-11-09 07:43:58 -08:00
Boris Zbarsky
75b79a780d Bug 808991. Named getters should get called for indexed properties on objects that don't support indexed properties. r=peterv 2012-11-08 23:48:42 -08:00
Boris Zbarsky
8b9e634fac Bug 804738 part 2. Fix codegen for indexed operations to be consistent about the naming of the index argument. r=peterv 2012-11-06 08:01:49 -08:00
Boris Zbarsky
dd4d31b923 Bug 804738 part 1. Fix codegen for named operations to be consistent about the naming of the string argument. r=peterv 2012-11-06 08:00:57 -08:00
Boris Zbarsky
0b3703ffee Bug 806033. Finish getting rid of stray [Infallible] annotation bits. r=khuey 2012-11-05 14:40:33 -05:00
Boris Zbarsky
bb15ddc515 Bug 804319. Implement parsing of the "stringifier;" shorthand. r=khuey 2012-11-05 14:40:32 -05:00
Boris Zbarsky
3138ceecd8 Bug 803519. Require indexed/named getters if we have creators/deleters/setters. r=peterv 2012-11-05 11:58:03 -05:00
Boris Zbarsky
892b323c34 Bug 772869. Make getOwnPropertyNames work correctly for WebIDL proxy bindings. r=peterv,ms2ger 2012-11-05 11:58:03 -05:00
Boris Zbarsky
dbf8898dc9 Bug 788225. Implement WebIDL deleters. r=peterv 2012-11-05 11:58:02 -05:00
Vendelin Ruzicka
a41524cf2a Bug 806184 - Can't use 'delete' method in WebIDL. r=bz 2012-10-31 13:36:20 +01:00
Peter Van der Beken
020e296215 Fix for bug 763643 (Implement static operations and attributes for WebIDL). r=bz.
--HG--
extra : rebase_source : d9dd5450af5d2b1f3e7e3a738ec2efdc7f7053da
2012-10-19 09:34:28 +02:00
Peter Van der Beken
3c03fcb747 Fix for bug 785277 (Implement PutForwards in the new DOM bindings). r=bz.
--HG--
extra : rebase_source : 5153ebab17a9637946d0f0c322997c0c3d118190
2012-08-13 14:20:49 +02:00
Boris Zbarsky
18610055c4 Bug 804725. Use the right type name for interface arguments for binding example codegen. r=jst 2012-10-24 16:10:49 -04:00
Boris Zbarsky
2b5f806cc9 Bug 793267. Add support for [Unforgeable] in WebIDL. r=peterv
Unforgeable attributes are defined directly on the object, not on the
prototype.  So we keep them in a separate spec array and define them
during object creation as needed.

This means that we have to pass that separate spec array to the Xray
helpers, unfortunately, which somewhat complicates those.
2012-10-24 16:10:49 -04:00
Boris Zbarsky
5480ae711c Bug 798187 part 1. Add support for dictionary return values. r=peterv 2012-10-22 13:08:52 -04:00
Boris Zbarsky
46e3240468 Bug 802636. Add a test that makes sure that codegen and example generation agree with each other. r=jst 2012-10-17 21:17:16 -04:00
Boris Zbarsky
3ee2ff3f57 Bug 796983 part 1. Switch nullable primitives to using a const Nullable. r=jst 2012-10-17 17:01:55 -04:00
Trevor Saunders
6c294d1802 Bug 742191 - Part d: Throw TypeErrors for Paris binding exceptions; r=bz 2012-10-16 14:06:10 -04:00
Boris Zbarsky
4e2b097bf2 Bug 792890. Fix JS-wrapping of callback interfaces to just return the underlying JS object. r=peterv
There are several changes here:

1) When wrapping a callback interface object for JS, just extract the
   underlying JSObject from inside it and hand that object out.

2) Flag callback interface descriptors as "not concrete" (only matters
   for cases when they have constants on the interface object) and not
   wrappercached (will catch bugs if someone tries to treat them as a
   Gecko object).

3) Fix a preexisting bug in sequence wrapping where we'd try to
   JS_DefineElement twice if we were wrapping a null value for a
   sequence of nullable interface objects.
2012-10-10 15:57:57 -04:00
Boris Zbarsky
9dc86ac76f Bug 792137. [TreatNonCallableAsNull] lives on the callback type now. r=peterv 2012-10-10 15:53:02 -04:00
Kyle Huey
f29709dd83 Bug 793025: Convert FileReaderSync to WebIDL bindings. r=bz 2012-09-20 19:47:47 -07:00
Boris Zbarsky
76cb861fd1 Bug 790975. Support sequences as dictionary members in WebIDL. r=peterv 2012-09-18 23:24:27 -04:00
Peter Van der Beken
c707cfbc30 Fix for bug 768684 (Fix sequence<any> return type in WebIDL). r=bz.
--HG--
extra : rebase_source : acbd2ce77f62146e9bd7fc285a8042073ed95722
2012-06-13 17:15:05 +02:00
Boris Zbarsky
7fcdacaf95 Bug 790273. Add support for [LenientThis] in WebIDL. r=peterv 2012-09-12 17:24:58 +01:00
Boris Zbarsky
2268aac36b Bug 787554. Don't prefix WebIDL getters names with a Get if they look like simple member access on the C++ side. r=peterv 2012-09-11 20:08:24 +01:00
Boris Zbarsky
41c2bbabd7 Bug 788369. Allow passing strings to the XHR constructor, since CoffeeScript seems to want to do it. r=peterv 2012-09-07 11:07:12 -04:00
Boris Zbarsky
82186c4dca Bug 742144. Implement support for typedefs in WebIDL. r=khuey 2012-09-06 10:23:51 -04:00
Ms2ger
c84831a407 Bug 763367 - Add support for [EnforceRange] and [Clamp]; r=bz 2012-09-06 09:25:03 +02:00
Boris Zbarsky
4f2844b1a2 Bug 778150 part 3. Default attributes to infallible. Allow annotation of fallible attributes in WebIDL. r=peterv
The valid annotations are [Throws], [GetterThrows], and [SetterThrows], which can all either take no value or
be set to MainThread or Workers if the throwing behavior is only happening on main thread or in workers
2012-09-05 09:21:33 -04:00
Boris Zbarsky
2ec1495f64 Bug 778150 part 2. Default methods to infallible. Allow annotation of fallible methods in WebIDL using [Throws]. r=peterv
[Throws] can either take no value, or can take MainThread or Workers if the
throwing behavior is only happening on main thread or in workers.
2012-09-05 09:21:33 -04:00