Ed Morley
ed709a7977
Backed out changeset 877a227c502f (bug 882541) for causing bug 926305
2013-10-14 17:31:06 +01:00
Ed Morley
0f6d579260
Backed out changeset ccf11ae08ba2 (bug 882541)
2013-10-14 17:30:43 +01:00
Boris Zbarsky
ce891d2c00
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
0b96fd507b
Bug 882541 part 1. Don't require all arguments after an optional argument to be optional. r=khuey
2013-10-11 12:28:23 -04:00
Andy Wingo
53ce73ba77
Bug 907077: Change for-of to conform to latest ES6 specification. r=jwalden
2013-10-03 13:37:57 +01:00
Olli Pettay
3b5f032268
Bug 637248, Make Event.isTrusted Unforgeable, r=bz
...
--HG--
extra : rebase_source : 3edd919c6dac839d6082c1c73de88f9ba2d22146
2013-09-28 13:27:29 +03:00
Boris Zbarsky
eff308009e
Bug 918011 part 4. Support dictionaries in unions. r=smaug
2013-09-26 00:05:00 -04:00
Boris Zbarsky
c80929513e
Bug 919603 part 1. Introduce support for the [Global] extended attribute. r=peterv
2013-09-25 14:38:30 -04:00
Ryan VanderMeulen
b2c316d8b2
Backed out 5 changesets (bug 905493, bug 920125, bug 919603) for mochitest orange on a CLOSED TREE.
...
Backed out changeset ccef656b2973 (bug 919603)
Backed out changeset 4b29ce0b2fff (bug 919603)
Backed out changeset b0a051ec55b7 (bug 919603)
Backed out changeset baa9a774aad1 (bug 920125)
Backed out changeset e03276bf4eaa (bug 905493)
2013-09-25 18:22:33 -04:00
Boris Zbarsky
3f8499abae
Bug 919603 part 1. Introduce support for the [Global] extended attribute. r=peterv
2013-09-25 14:38:30 -04:00
Boris Zbarsky
283a0900a5
Bug 919705. Don't ever claim that jsImplemented things are single-operation interfaces. r=mccr8
2013-09-23 23:11:45 -04:00
Boris Zbarsky
4bcfb1058f
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
5c7becd069
Bug 903277. Support default values other than null for WebIDL unions. r=bzbarsky
2013-08-29 23:29:38 -04:00
Boris Zbarsky
68ca6691d8
Bug 909863. Add support for the [SameObject] extended attribute in WebIDL. r=khuey
2013-08-29 00:30:05 -04:00
Boris Zbarsky
2cb7f1d590
Bug 901116. Give a better error message if the same name is typedeffed twice in WebIDL. r=khuey
...
We could also switch typedefs to using IDLWrapperType, but this seems like a smaller and still-sane change.
2013-08-29 00:30:05 -04:00
Boris Zbarsky
0b30dee716
Bug 901285. Allow trailing comma in WebIDL enums. r=khuey
2013-08-05 13:40:32 -04:00
Boris Zbarsky
165344b12f
Bug 900994. Add support for Func annotations on interface objects. r=smaug
2013-08-03 23:38:55 -04:00
Boris Zbarsky
036228ec9f
Bug 892609. Implement support for [ArrayClass]. r=khuey
2013-07-30 22:28:30 -07:00
Ryan VanderMeulen
5079ebb23d
Merge m-c to inbound.
2013-07-30 15:41:57 -04:00
Ryan VanderMeulen
55f1829235
Merge m-c to fx-team.
2013-07-30 13:12:26 -04:00
Mina Almasry
7d6b47172c
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
41d8dc6ef4
Bug 895728 part 2. Make booleans, numerics, and strings/enums all be distinguishable from each other. r=khuey
2013-07-30 10:39:34 -07:00
Boris Zbarsky
e86315b77e
Bug 895728 part 1. Introduce "boolean" and "numeric" types, since those will be treated differently for purposes of distinguishability and overload resolution. r=khuey
2013-07-30 10:39:34 -07:00
Mina Almasry
6e0cc6d805
Bug 872377 - Restore "toJSON" to list of reserved webidl keywords. r=bz
...
This patch makes toJSON a reserved webidl keyword, and changes the implementation of mozRTCSessionDescription to use a jsonifier.
2013-07-29 12:39:18 -04:00
David Zbarsky
d170a8f396
Bug 865998: Implement WebIDL union return values r=bz
2013-07-26 11:25:54 -07:00
Mina Almasry
27f9b1cdb1
Bug 760851 - Add jsonifier WebIDL declaration and add toJSON to performance.timing. r=bz
...
This patch adds a jsonifier declaration to WebIDL's. The declaration adds an autogenerated method toJSON() on the given webidl. This patch also adds jsonifier and toJSON() to PerformanceTiming.webidl, and performance.timing, respectively.
2013-07-26 12:00:49 -04:00
Boris Zbarsky
577cd0be78
Bug 884373. Align WebIDL handling of default parameters with ES6. r=khuey
2013-06-26 10:59:46 -04:00
James Kitchener
130d1ab83f
Bug 796850 - Implement WebIDL parser support for Bytestring r=bz
2013-06-13 01:15:35 -04:00
Boris Zbarsky
9be8ee1733
Bug 880367 part 3. Add support for [ChromeOnly] on interface objects. r=smaug
2013-06-13 01:12:37 -04:00
Boris Zbarsky
1e9345e9b0
Bug 880367 part 2. Make ordering of named constructors in codegen deterministic. r=smaug
...
I ran into this when looking at the diff in codegen from part 1.
2013-06-13 01:12:33 -04:00
Boris Zbarsky
c9eca87821
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
Jan-Ivar Bruaroey
8154e0de42
Bug 823512: Part 4: Workaround for lack of serializer support (bug 863402). r=bz
2013-05-15 01:07:49 -04:00
Boris Zbarsky
e335c1f797
Bug 869014. Don't allow name collisions between external interfaces and other objects. r=khuey
2013-05-09 13:08:29 -04:00
Ryan VanderMeulen
9edc2f4aa0
Backed out 6 changesets (bug 868996, bug 867903, bug 869014, bug 870219, bug 861587) for PGO bustage.
...
CLOSED TREE
2013-05-09 17:11:59 -04:00
Boris Zbarsky
53db24c110
Bug 869014. Don't allow name collisions between external interfaces and other objects. r=khuey
2013-05-09 13:08:29 -04:00
Peter Van der Beken
b33ba06a9d
Bug 820846 - Modify the ListBase IC to work with [OverrideBuiltins] bindings, codegen changes and make HTMLDocument OverrideBuiltins. r=bz.
2013-04-20 18:04:09 +02:00
Ehsan Akhgari
75c12cc4b0
Backed out 3 changesets (bug 855971, bug 820846) because of browser-chrome test failures
...
Backed out changeset a2245b038bcc (bug 855971)
Backed out changeset 2a999f8ee317 (bug 820846)
Backed out changeset 6dba144500f3 (bug 820846)
2013-05-04 19:27:20 -04:00
Peter Van der Beken
1a28e0e54a
Bug 820846 - Modify the ListBase IC to work with [OverrideBuiltins] bindings, codegen changes and make HTMLDocument OverrideBuiltins. r=bz.
...
--HG--
extra : rebase_source : 12dbaff8dd2acfeee87bdfa738a013344cb1977a
2013-04-20 18:04:09 +02:00
Boris Zbarsky
c61b432072
Bug 742206 part 2. Implement WebIDL parser support for Date. r=smaug,khuey
2013-05-02 14:38:19 -04:00
Andrew McCreight
18efb67705
Bug 851639 - Allow JS implemented WebIDL to be registered on window.navigator. r=bz
2013-04-30 13:30:25 -07:00
Reuben Morais
84bf3ea85d
Bug 864578 - Follow up, fixing test.
...
--HG--
extra : rebase_source : ace505d178de7ce66e5733df74291b31471a0202
2013-04-22 18:22:47 -07:00
Reuben Morais
116df4a0c4
Bug 864578 - Allow NamedConstructor and NoInterfaceObject in the same interface. r=bz
...
--HG--
extra : rebase_source : 1c15c840a72539cfd97d54dbaef4908b1571aefa
2013-04-22 18:05:25 -07:00
Boris Zbarsky
2693eed75f
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
e086f4c1c6
Bug 863094 - Infinity/-Infinity/NaN defaults for unrestricted types, r=bz
...
--HG--
extra : rebase_source : c2495008be9b084656222e6a0773c72d5224e9cc
2013-04-18 19:58:01 +03:00
Olli Pettay
baa392919d
Bug 862983 - HeaderFile annotation for WebIDL interfaces, r=bz
...
--HG--
extra : rebase_source : f096c032342b71aeb42999f80241697c79037b7c
2013-04-17 23:29:09 +03:00
Boris Zbarsky
63ddc32ba6
Bug 859503. Make unknown extended attributes into parse errors. r=khuey
2013-04-10 13:49:06 -04:00
Boris Zbarsky
38246c449e
Bug 852219 part 1. Don't mark JS-implemented interfaces with descendant interfaces as final. r=khuey,mccr8
2013-04-03 22:22:15 -04:00
David Zbarsky
d4058ab34c
Bug 850958 - Implement instanceof without relying on nsIDOM interfaces r=bz
2013-03-18 19:14:39 -04:00
Andrew McCreight
b605a583db
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-18 16:05:51 -07:00
Andrew McCreight
6076fafa7a
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-18 16:04:24 -07:00
Kyle Huey
5a7ceaeb53
Back out Bug 827486 for PGO bustage. CLOSED TREE
2013-03-18 13:00:00 -07:00
Andrew McCreight
b6112c1005
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-18 10:19:42 -07:00
Andrew McCreight
8298fa76d1
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-18 10:19:41 -07:00
Phil Ringnalda
8d356d6b0e
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
046b780f2e
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-17 09:56:13 -07:00
Andrew McCreight
496c9b693e
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-17 09:55:14 -07:00
Boris Zbarsky
e89e9effb4
Bug 843627 part 2. Implement the WebIDL API for <embed> and <applet>. r=peterv
2013-03-17 10:42:03 -04:00
Phil Ringnalda
e9aaf10590
Back out f408dd29944c:db5c280d1907 (bug 827486) for probably having needed a clobber
...
CLOSED TREE
2013-03-16 18:16:37 -07:00
Andrew McCreight
4ed2fd027f
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-16 16:22:23 -07:00
Andrew McCreight
e87852f192
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-16 16:22:22 -07:00
Boris Zbarsky
70ffbcae37
Bug 837339. Re-disallow nullable dictionary members inside dictionaries. r=khuey
2013-03-14 15:42:59 -04:00
Pranav Ravichandran
4af1152232
Bug 847928 - Element type of a WebIDL array must not be a sequence or dictionary type. r=bzbarsky
2013-03-06 13:06:23 -05:00
Boris Zbarsky
ed13d9dc98
Bug 827158 part 8. Implement legacycaller support in WebIDL. r=peterv
2013-03-04 14:08:24 -05:00
Pranav Ravichandran
242d2bcf74
Bug 836816 - WebIDL parser should enforce spec restrictions on dictionary member types. r=bzbarsky
2013-02-27 09:55:56 -05:00
Kyle Huey
2c8d7046c5
Bug 784812: Implement real dependencies for WebIDL bindings. r=bz,ted
2013-02-24 12:36:44 -08:00
Phil Ringnalda
cd3ba96b65
Back out cd8481cc4a32 (bug 784812) for make check failures
2013-02-24 14:10:48 -08:00
Kyle Huey
63884b088c
Bug 784812: Implement real dependencies for WebIDL bindings. r=bz,ted CLOSED TREE
2013-02-24 12:36:44 -08:00
Kyle Huey
41104cbff1
Backed out changeset a71766c2c85d
2013-02-24 12:33:36 -08:00
Kyle Huey
75d88ff353
Bug 784812: Implement real dependencies for WebIDL bindings. r=bz,ted
2013-02-24 12:03:03 -08:00
Peter Van der Beken
b17c86c836
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
afda50b640
Bug 835417 part 2. Implement WebIDL parser and codegen support for marking things pure. r=peterv
2013-01-29 17:53:53 -05:00
Boris Zbarsky
c6638a677b
Bug 830099. Flag WebIDL dictionaries and callbacks with some information indicating whether we need main-thread and worker codegen for them and then use that information to skip unneccessary codegen. r=peterv
2013-01-28 23:30:17 -05:00
Phil Ringnalda
426c47cdf0
Back out c5238879470f and b3cabb259af7 (bug 830099) for bustage
2013-01-28 22:36:59 -08:00
Boris Zbarsky
719c7bf030
Bug 830099. Flag WebIDL dictionaries and callbacks with some information indicating whether we need main-thread and worker codegen for them and then use that information to skip unneccessary codegen. r=peterv
2013-01-28 23:30:17 -05:00
Ehsan Akhgari
728d7beaad
Backed out changeset 32786d29daf8 (bug 830099) because of build bustage
2013-01-28 23:51:03 -05:00
Boris Zbarsky
f5b233966e
Bug 830099. Flag WebIDL dictionaries and callbacks with some information indicating whether we need main-thread and worker codegen for them and then use that information to skip unneccessary codegen. r=peterv
2013-01-28 23:30:17 -05:00
Boris Zbarsky
cf1f63d55a
Bug 822470 part 4. Expose the concept of "single operation interface" in the WebIDL data model. r=peterv
2013-01-28 08:34:30 -05:00
William Chen
382d12416e
Bug 828532 - Removed 'prototype' as a reserved identifier in WebIDL. r=bz
2013-01-10 11:54:13 -08:00
Boris Zbarsky
8d0e59d7f2
Bug 824237. Add support for "partial interface" to WebIDL parser. r=khuey
2013-01-10 10:49:07 -05:00
Boris Zbarsky
20d4a061d6
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
4407e6c85b
Bug 821580. Disallow [Unforgeable] on static attributes, per spec update. r=khuey
2013-01-02 22:03:25 -05:00
Boris Zbarsky
eabd327329
Bug 819845. Update WebIDL bindings to spec change: sequences/arrays are no longer distinguishable from dictionaries, and conversion to a sequence works on arbitrary objects. r=khuey
2013-01-02 22:03:25 -05:00
Boris Zbarsky
43aec8d9af
Bug 821438. Allow inheritance from interfaces with Unforgeable attributes. r=peterv
2012-12-14 14:10:50 -05:00
Boris Zbarsky
d4de9b2c67
Bug 815502. Implement support for variadic arguments in WebIDL. r=peterv
2012-12-11 17:50:56 -05:00
Boris Zbarsky
862a07def7
Bug 816846. Correctly call up to our superclass to resolve an identifier conflict. r=khuey
2012-12-10 14:28:02 -05:00
Benoit Jacob
b7633de200
Bug 816187 - make WebIDL accept nullable dictionary retvals; let getContextAttributes's retval be nullable - r=bz
2012-11-30 18:30:05 -05:00
Boris Zbarsky
5eab6d42fb
Bug 812783. Add support for flagging callbacks as worker-only. r=khuey
2012-11-29 11:14:40 -05:00
Eric Faust
c4df170bbd
Bug 747289 - Part 1/2 - Update Paris bindings to expose DOM constants. r=bz
2012-11-28 16:28:36 -05:00
Boris Zbarsky
866605e3b0
Bug 767933 part 1. Implement parser support for 'unrestricted float' and 'unrestricted double', and for the [LenientFloat] extended attribute. r=khuey
2012-11-27 15:32:05 -05:00
Boris Zbarsky
1649f6c386
Bug 779048 part 6. Handling of return values for callbacks. r=peterv
2012-11-09 07:43:58 -08:00
Boris Zbarsky
666d5e4703
Bug 806033. Finish getting rid of stray [Infallible] annotation bits. r=khuey
2012-11-05 14:40:33 -05:00
Boris Zbarsky
fea310c922
Bug 804632. Allow certain reserved words as argument names in WebIDL. r=khuey
2012-11-05 14:40:32 -05:00
Boris Zbarsky
27d4fe9034
Bug 804319. Implement parsing of the "stringifier;" shorthand. r=khuey
2012-11-05 14:40:32 -05:00
Ehsan Akhgari
d5fff20ef4
Bug 807697 - Enable integer to float type coercion in the Web IDL parser; r=bzbarsky
...
--HG--
extra : rebase_source : 93907e32c1111773af0b207274aa32323aabfa03
2012-11-01 12:30:21 -04:00
Peter Van der Beken
80ecd8538f
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
2412de3249
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
fbeee7dfd0
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
dd82a0d964
Bug 796983 part 2. Add a way to generate an example class declaration for a given WebIDL interface. r=jst
...
We mark constructors as static in the parser because they are. This
allows us to just use the isStatic() for the IDLMember to mark our
declarations static.
To generate an example interface implementation, just "make
interfacename-example" in $objdir/dom/bindings. This will place files
called interfacename-example.h and interfacename-example.cpp in that
directory. For example, "make XMLHttpRequest-example" will get you
$objdir/dom/bindings/XMLHttpRequest-example.h and
$objdir/dom/bindings/XMLHttpRequest-example.cpp.
Attribute getters currently default to const methods, while setters
and operations default to non-const methods.
--HG--
rename : dom/bindings/BindingGen.py => dom/bindings/ExampleGen.py
2012-10-17 17:01:55 -04:00
Boris Zbarsky
7f28e933c6
Bug 792137. [TreatNonCallableAsNull] lives on the callback type now. r=peterv
2012-10-10 15:53:02 -04:00
Boris Zbarsky
34d8ccc06a
Bug 792980. Don't force consumers to list descriptors for interfaces that are using all teh defaults. r=peterv
...
The new setup is:
* Consequential interfaces with no explicit descriptor are still skipped.
* If no information is provided about an interface, an empty descriptor is
assumed.
* If a list is provided and the only entry is a worker descriptor, an empty
main-thread descriptor is assumed.
2012-10-01 08:56:31 -04:00
Peter Van der Beken
f3ef69a188
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
0334fe32b0
Bug 790273. Add support for [LenientThis] in WebIDL. r=peterv
2012-09-12 17:24:58 +01:00
Boris Zbarsky
57c2a362b2
Bug 742144. Implement support for typedefs in WebIDL. r=khuey
2012-09-06 10:23:51 -04:00
Ms2ger
797a567f66
Bug 763367 - Add support for [EnforceRange] and [Clamp]; r=bz
2012-09-06 09:25:03 +02:00
Boris Zbarsky
00e03faa6d
Bug 778044. Add a way to pref off Paris binding constructor objects. r=peterv
2012-09-05 13:37:28 -04:00
Boris Zbarsky
7a3efb15c4
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
Boris Zbarsky
27ee186b67
Bug 786105. Setting inline style properties to null should remove them, just like setting them to empty string does. r=peterv
2012-08-31 20:59:46 -04:00
Ehsan Akhgari
237d29ef3d
Bug 785459 follow-up: use the python 2.5 syntax
2012-08-24 16:47:45 -04:00
Ehsan Akhgari
563418e39b
Bug 785472 - The Web IDL parser should not allow inheriting from an interface that is only forward declared; r=khuey
2012-08-24 15:23:21 -04:00
Ehsan Akhgari
6bac6b73be
Backout changeset 1142882b6c0b (bug 785472) because it breaks the build
2012-08-24 16:22:42 -04:00
Ehsan Akhgari
25b60c14d6
Bug 785472 - The Web IDL parser should not allow inheriting from an interface that is only forward declared; r=khuey
2012-08-24 15:23:21 -04:00
Ehsan Akhgari
416bb16525
Bug 785459 - Enable the WebIDL parser to be used stand-alone for syntax checking; r=khuey
2012-08-24 14:51:45 -04:00
Peter Van der Beken
b77fe91531
Fix for bug 742195 (Implement the extended attributes for null and undefined handling on strings in Paris bindings). r=bz.
2012-07-12 15:55:30 +02:00
Peter Van der Beken
ee9eae3141
Fix for bug 768692 (Move DOM list binding generation to the new DOM binding codegen). r=bzbarsky.
...
--HG--
extra : rebase_source : 651a0fac4c9a87ef1c0a9cd91588c6421fd050c4
2012-05-22 15:46:20 +02:00
Boris Zbarsky
1b273923c5
Bug 771636 part 2. Implement default values for WebIDL enums. r=peterv
2012-07-31 00:22:23 -04:00
Boris Zbarsky
d988f0953a
Bug 771636 part 1. Rearrange default-value handling so we actually set C++ values directly instead of round-tripping through jsval. r=peterv
2012-07-31 00:22:22 -04:00
Boris Zbarsky
4a5cf6f5f8
Bug 775844. Make sure to examine constructor signatures when looking for union types. r=peterv
2012-07-27 00:09:10 -04:00
Boris Zbarsky
26271bae45
Bug 777415. Disallow GetterInfallible/SetterInfallible annotations where they don't make sense. r=khuey
2012-07-27 00:09:10 -04:00
Boris Zbarsky
8024ef90c6
Bug 764456 part 5. Actually look at hasConcreteDescendant in hasInterfacePrototypeObject() so that we can avoid codegen for [NoInterfaceObject] interfaces hat are only implemented via "implements". r=peterv
2012-07-19 14:48:58 -04:00
Boris Zbarsky
dbdbca200f
Bug 768537 part 1. Update parser support for dictionaries to spec changes. r=jlebar
...
There are several parts here:
1) Enforce the requirement that dictionary arguments not followed by a required argument are optional.
2) Make dictionaries no longer be distinguishable from nullable types.
3) Disallow dictionaries or unions containing dictionaries inside a nullable type.
4) Force optional dictionaries to have a default value of null so that codegen doesn't have to worry about dealing with
optional arguments that have no default value in the IDL but need to be treated as if they were null.
2012-07-17 12:18:53 -04:00
Ed Morley
c9624f0f7a
Backout 9deb8edb5070 (bug 773519), ea5a243a60f1 & 0cad1e553bea (bug 768537) for compilation failures
2012-07-17 17:48:11 +01:00
Boris Zbarsky
2642932cab
Bug 768537 part 1. Update parser support for dictionaries to spec changes. r=jlebar
...
There are several parts here:
1) Enforce the requirement that dictionary arguments not followed by a required argument are optional.
2) Make dictionaries no longer be distinguishable from nullable types.
3) Disallow dictionaries or unions containing dictionaries inside a nullable type.
4) Force optional dictionaries to have a default value of null so that codegen doesn't have to worry about dealing with
optional arguments that have no default value in the IDL but need to be treated as if they were null.
2012-07-17 12:18:53 -04:00
Boris Zbarsky
808e255ede
Bug 757164. Move infallibility annotations into webidl. r=peterv
...
In this new setup, there are three new extended attributes: Infallible,
GetterInfallible, SetterInfallible. The first one applies to both methods and
attributes, while the last two apply only to attributes. Each one can be
either set with no value specified (in which case it applies both on main
thread and in workers) or can be set to MainThread or Workers to limit where it
applies.
If Infallible is set on an attribute, then GetterInfallible and
SetterInfallible will be ignored. So if you want to specify, for example, an
attribute that's infallible on the main thread and has an infallible getter in
workers, the right way to do that is [GetterInfallible,
SetterInfallible=MainThread].
2012-07-13 19:29:14 -04:00
Boris Zbarsky
2bf625b035
Bug 767352. Keep track of a method's overloads in a list of IDLMethodOverload objects. r=jlebar
2012-07-06 12:21:24 -04:00
Boris Zbarsky
4249730057
Bug 768190. Don't allow [TreatNullAs] or [TreatUndefinedAs] on dictionary members. r=jlebar
2012-06-30 01:53:32 -04:00
Boris Zbarsky
744d2627e8
Bug 767546. Make the WebIDLError constructor take a list of locations. r=jlebar
2012-06-30 01:53:28 -04:00
Boris Zbarsky
a47ad9e7fc
Bug 768085. Speed up WebIDL tests and make them more usable by pickling the datastructures Yacc produces for the grammar and shutting up the logging it does in the debug mode we force it into. r=khuey
2012-06-25 23:35:42 -04:00
Peter Van der Beken
356f838036
Fix for bug 756258 (Support union types in new DOM bindings). r=bz.
...
--HG--
extra : rebase_source : 5352801a4eb5085f73a5b6e78aa238c5c9d44179
2012-05-18 23:25:47 +02:00
Peter Van der Beken
47e822e533
Fix for bug 765467 (Fix special operations in the WebIDL parser). r=khuey.
...
--HG--
extra : rebase_source : 4186629224c5e822473de1931604970106c721a6
2012-05-22 12:02:21 +02:00
Boris Zbarsky
244ed069dc
Bug 766853 followup to address review comment. No review other than the other review.
2012-06-22 16:21:44 -04:00
Boris Zbarsky
b2bd288bc9
Bug 766853. The two sides of an implements statement must both be non-callback interfaces. r=jlebar
2012-06-22 16:18:51 -04:00
Boris Zbarsky
ad2e1bf8fb
Bug 766844. Non-callback interfaces must not inherit from callback interfaces. r=jlebar
2012-06-22 16:18:51 -04:00
Boris Zbarsky
5b15dd6b04
Bug 742152. Move distinguishing index determination and verification of type-identity of preceding arguments out of codegen and into the WebIDL parser. r=jlebar
2012-06-22 16:18:50 -04:00
Boris Zbarsky
49e2a9624f
Bug 742213. isDistinguishableFrom should correctly check whether two interfaces can be implemented on the same object. r=jlebar
2012-06-22 16:18:50 -04:00
Boris Zbarsky
73dde405dc
Bug 764456 part 1. Flag consequential interfaces in the WebIDL data model. r=khuey
2012-06-22 16:18:50 -04:00
Boris Zbarsky
06b2de4bd0
Bug 763724. Detect cycles in the interface inheritance and implementation graph. r=jlebar
2012-06-21 12:29:11 -04:00
Boris Zbarsky
470005a7fe
Bug 764698. Fix isDistinguishableFrom for dictionaries to work right. r=peterv
2012-06-21 12:29:11 -04:00
Boris Zbarsky
03bc840cdd
Bug 763911. Add support for interface members of dictionaries. r=khuey
2012-06-19 12:09:37 -04:00
Boris Zbarsky
41725e7de3
Bug 750297 part 1. Add support for objects that do not have a wrapper cache in WebIDL bindings. r=peterv
2012-06-15 16:25:50 -04:00
Boris Zbarsky
6c6503abf1
Bug 742153 part 3. Implement codegen for dictionary arguments. r=peterv
...
Another implementation option would be to put all the dictionaries in a single
file and have a static global set of ids which works across all dictionaries
and is initialized once at startup or so. That would also handle cross-file
dictionary inheritance better.
One problem that remains is the fake descriptor business. At the moment this
does not allow interface types inside dictionaries. We could probably work
around this by either refactoring code to make it possible to get the declType
independently of the actual conversion template (whether because it lives in a
separate function or because the conversion template generator knows to just
return an empty string when the fake descriptor provirder is passed) or by
figuring out a way to pass an actual descriptor provider to dictionary codegen.
2012-06-12 10:22:05 -04:00
Boris Zbarsky
40dc245f66
Bug 742153 part 1. Add support for dictionaries in the WebIDL parser. r=khuey
2012-06-12 10:22:05 -04:00
Boris Zbarsky
898e465bbb
Bug 761772. Add support for 'implements' in WebIDL. r=khuey
2012-06-11 18:21:35 -04:00
Boris Zbarsky
3f47caaa36
Bug 761882. Run the WebIDL parser tests during make check. r=khuey
2012-06-08 17:41:16 -04:00
Boris Zbarsky
60872f999b
Bug 742151. Fix the error reporting in the WebIDL parser to list correct line numbers. r=khuey
...
There are two changes here. One is to pass tracking=True to our parser. This makes it properly track positions
of all productions, not just of lexer tokens. The second is to properly count up our newlines in the lex data,
since the lexer seems to report the line number of the start of the lex data, which is always 1 in our case.
2012-06-04 21:30:03 -04:00
Boris Zbarsky
bcf9d165ae
Bug 760749. Make interface type constructor args work in WebIDL bindings. r=khuey
2012-06-04 21:30:00 -04:00
Boris Zbarsky
5339245a67
Bug 750264. Give IDLType an operator!= so that codegen actually works correctly. r=khuey
2012-05-25 01:07:30 -04:00
Kyle Huey
93aee7cacc
Update webidl-parser snapshot to pick up bug 742145.
2012-05-24 21:41:33 -07:00
Gervase Markham
82ff7027aa
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Boris Zbarsky
834a627f02
Bug 748267 part 3. Codegen for sequence return values. r=peterv
...
The big block in getRetvalDeclarationForType is just direct cut/paste from CGCallGenerator plus the addition of the sequence case. The IDL parser changes were OKed by khuey; they're needed so that we don't have to worry about the ordering of sequence with conversions for strings and primitives.
2012-05-15 14:23:29 -04:00
Kyle Huey
2034ae6a40
Update the WebIDL Parser to pick up Bug 753459. r=bz
2012-05-09 11:49:56 -07:00