Commit Graph

112 Commits

Author SHA1 Message Date
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
Boris Zbarsky
4c44f5a456 Bug 829248. Implement basic support for [TreatUndefinedAs=Missing] in WebIDL. r=khuey
This does not add support for [TreatUndefinedAs=Missing] in overloaded
methods, since it's not clear what that should really look like.

This also does not require that [TreatUndefinedAs=Missing] on an
argument force it on all later arguments, since it's not clear that we
want that long-term.
2013-06-05 20:51:21 -04:00
Ehsan Akhgari
5be6cc599a Bug 861371 - Allow Web IDL enums to have names starting with a digit; r=bzbarsky
--HG--
extra : rebase_source : 5ebf235e9408bdfdfd37504e2f79c65978ccf51d
2013-06-03 17:54:46 -04:00
Boris Zbarsky
df4472c441 Bug 874154. Make sure we don't end up with uninitialized JSObject* or JS::Value in dictionaries. r=ms2ger 2013-05-21 14:15:30 -04:00
Reuben Morais
4d7c90ddd3 Bug 873647 - Teach codegen how to wrap Dates in constructors. r=bz
--HG--
extra : rebase_source : f4267f15b7076aacb47fb94e4173a05dac8de255
2013-05-17 13:52:32 -07:00
Boris Zbarsky
42db4b4213 Bug 868715 part 9. Add tracing to WebIDL dictionary return values. r=peterv 2013-05-16 12:36:56 -04:00
Boris Zbarsky
acedcb302c Bug 868715 part 7. Add tracing to dictionaries. r=peterv 2013-05-16 12:36:55 -04:00
Boris Zbarsky
e77d64048d Bug 868715 part 6. Add the ability to trace sequence arguments. r=peterv 2013-05-16 12:36:55 -04:00
Boris Zbarsky
4ef50b8af7 Bug 868448. Fix the successCode in dictionary to-js conversions to actually work right, and document the requirements on successCode better. r=smaug 2013-05-06 08:31:01 -04:00
Boris Zbarsky
386bc8fd74 Bug 742206 part 3. Implement type conversions for Date in WebIDL. r=smaug 2013-05-02 14:38:20 -04:00
Boris Zbarsky
7041704c76 Bug 861493. When passing arguments to an Xray for a WebIDL constructor, make sure to do the argument unwrapping before entering the content compartment. r=bholley,waldo
There are several changes here:

1) Adds some MutableThis methods to Optional, Nullable, and dictionaries to
   effectively allow doing a const_cast without knowing the actual type being
   templated over.  I needed this because I do not in fact know that type in
   the relevant code.  I'm open to suggestions for a better name for this
   method.
2) Adds some operator& to RootedJSValue to make it look more like a JS::Value,
   and in particular so I can JS_WrapValue the thing in it.
3) Adds a Slot() method to NonNullLazyRootedObject, just like NonNull has.
4) Adds an operator& to LazyRootedObject to make it look more like JSObject* so
   I can JS_WrapObject the thing in it.
5) Implements the actual rewrapping of the arguments into the content compartment.
6) Fixes a small preexisting bug in which we didn't look at named constructors
   in getTypesFromDescriptor (this was causing my tests to not compile).
7) Changes Xrays to not enter the content compartment when calling a WebIDL
   constructor.
8) Adds some friend API to report things as not being functions.
2013-04-25 19:03:05 -04:00
Boris Zbarsky
21fbfb1e31 Bug 843264. Allow returning sequences of non-primitive types from callback methods. r=mccr8 2013-04-24 14:59:14 -04:00
Boris Zbarsky
afd40a2989 Bug 863386. Add support for nullable enum arguments and return values. r=mccr8
This incidentally fixes bug 843355
2013-04-19 23:04:19 -04:00
Olli Pettay
90a4da3e6f Bug 863094 - Infinity/-Infinity/NaN defaults for unrestricted types, r=bz
--HG--
extra : rebase_source : c2495008be9b084656222e6a0773c72d5224e9cc
2013-04-18 19:58:01 +03:00
Boris Zbarsky
4c038bb2cd Bug 856215. Fix conversion of sequences of sequences to JS to not screw up its indexing. r=khuey 2013-04-02 20:20:38 -04:00
Andrew McCreight
46921f5eb1 Bug 827486, part 7 - add basic code gen test. r=bz 2013-03-18 16:08:50 -07:00
Kyle Huey
95b9d46c8a Back out Bug 827486 for PGO bustage. CLOSED TREE 2013-03-18 13:00:00 -07:00
Andrew McCreight
764f49155d Bug 827486, part 7 - add basic code gen test. r=bz 2013-03-18 10:19:42 -07:00
Phil Ringnalda
7004898004 Back out 2ea5f267af77:218356c595fc (bug 827486) for Windows builds dying with an obscure "MemoryError"
CLOSED TREE
2013-03-17 16:40:54 -07:00
Andrew McCreight
72d64db0b2 Bug 827486, part 7 - add basic code gen test. r=bz 2013-03-17 09:58:10 -07:00
Phil Ringnalda
802b512b12 Back out f408dd29944c:db5c280d1907 (bug 827486) for probably having needed a clobber
CLOSED TREE
2013-03-16 18:16:37 -07:00
Andrew McCreight
24600b1f22 Bug 827486, part 7 - add basic code gen test. r=bz 2013-03-16 16:22:23 -07:00
David Zbarsky
38ef2eb725 Bug 842201 - SVGUnitTypes interface object is not being instantiated r=bz 2013-03-13 14:07:49 -04:00
Boris Zbarsky
789263e1c5 Bug 827158 part 8. Implement legacycaller support in WebIDL. r=peterv 2013-03-04 14:08:24 -05:00
Boris Zbarsky
31abf66ed4 Bug 845666. Add support for sequences containing other sequences (or dictionaries containing sequences) to WebIDL. r=peterv
This keeps simple sequence arguments and variadics using an auto array, while everything else uses a non-auto array.
2013-03-02 01:07:43 -05:00
Boris Zbarsky
3875ee73e3 Bug 843261. Add support for sequence<DOMString> arguments in WebIDL callbacks. r=peterv
This does allow people to accidentally hit the slower path through use
of non-const strings, but I think that's OK now that we're mostly
autogenerating this stuff
2013-02-28 12:56:41 -05:00
Ryan VanderMeulen
238b010bd5 Backed out 7 changesets (bug 832920, bug 776536, bug 843261) for mochitest-a11y assertions on a CLOSED TREE.
--HG--
rename : content/base/src/NodeIterator.cpp => content/base/src/nsNodeIterator.cpp
rename : content/base/src/NodeIterator.h => content/base/src/nsNodeIterator.h
rename : content/base/src/TreeWalker.cpp => content/base/src/nsTreeWalker.cpp
rename : content/base/src/TreeWalker.h => content/base/src/nsTreeWalker.h
2013-02-28 14:41:30 -05:00
Boris Zbarsky
0c8bec67f1 Bug 843261. Add support for sequence<DOMString> arguments in WebIDL callbacks. r=peterv
This does allow people to accidentally hit the slower path through use
of non-const strings, but I think that's OK now that we're mostly
autogenerating this stuff
2013-02-28 12:56:41 -05:00
Peter Van der Beken
86d3fc6af5 Fix for bug 825628 (Implement NamedConstructor) - add codegen support for NamedConstructor. r=bz.
--HG--
extra : rebase_source : 8393995dca6f65cb49512874c1916ee745436638
2013-01-22 11:51:15 +01:00
Boris Zbarsky
532c8c6a52 Bug 838691 part 4. Add tests for pref-controlled and function-controlled properties. r=peterv
I've manually verified that the generated code for this looks like it should.
2013-02-19 11:54:41 -05:00
Peter Van der Beken
096abd5a26 Fix for bug 838269 (Support cross-global |... instanceof DOMInterface|). r=bz.
--HG--
extra : rebase_source : e5ad1d7da8029394e3ecb38909eca406a675dbe9
2013-01-08 19:05:36 +01:00
Boris Zbarsky
b93c5f76e5 Bug 837645. Support 'any' values in sequences and dictionaries. r=smaug,peterv 2013-02-06 14:23:45 +00:00
Peter Van der Beken
bfc9de7860 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 : 5668d9e01bff0fe7831d98018428856e5940a620
2012-12-03 17:07:49 +01:00
Boris Zbarsky
daf569d68b Bug 822470 part 6. Hook up callback interface codegen. r=peterv 2013-01-28 08:34:30 -05:00
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
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
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