Граф коммитов

374 Коммитов

Автор SHA1 Сообщение Дата
Boris Zbarsky 3545a68bc5 Bug 1048437. Allow dictionary members with '-' in the name. r=khuey 2014-08-04 15:02:58 -04:00
Boris Zbarsky 8b7f7ff8f1 Bug 1017988 part 10. Disallow Pref annotations on things that are exposed in workers. r=khuey 2014-08-04 22:20:35 -04:00
Boris Zbarsky 0fa57174d9 Bug 1017988 part 7. Add support for parsing the [Exposed] Web IDL attribute and determining whether a given interface member should be exposed in a particular global. r=khuey 2014-08-04 22:20:34 -04:00
Boris Zbarsky d1f4dba8b5 Bug 1017988 part 6. Implement support for [PrimaryGlobal]. r=khuey 2014-08-04 22:20:34 -04:00
Boris Zbarsky bb7246da13 Bug 1017988 part 5. Store the set of known global names on our outermost IDLScope. r=khuey 2014-08-04 22:20:33 -04:00
Boris Zbarsky b6e246c5f6 Bug 1017988 part 4. Rejigger how we do partial interfaces so that we can keep track of which partial interface a given member came from. r=khuey 2014-08-04 22:20:33 -04:00
Boris Zbarsky 8692e4a923 Bug 1017988 part 3. Allow the Global extended attribute to take a value. r=khuey 2014-08-04 22:20:33 -04:00
Boris Zbarsky deaa309f90 Bug 1017988 part 2. Add support for parenthesized lists as values of extended attributes in Web IDL. r=khuey 2014-08-04 22:20:33 -04:00
Boris Zbarsky 82495c5d72 Bug 1017988 part 1. Make our Web IDL parser fail on warnings from the underlying ply code. r=khuey 2014-08-04 22:20:32 -04:00
Ben Kelly 9e28c19084 Bug 1025183 P1 Add ScalarValueString to webidl parser. r=bz 2014-08-01 16:23:48 -04:00
Ben Kelly 93f746a2f6 Revert bug 1025183 (revs 69373df15281, dd6d84edf08e, 728a5d18bcd9, 71babe0bc84b, c60f9054acf6) for bustage. r=me 2014-08-01 14:10:40 -04:00
Ben Kelly 687ee09c07 Bug 1025183 P1 Add ScalarValueString to webidl parser. r=bz 2014-08-01 13:56:59 -04:00
Ed Morley 7323d04da2 Backed out changeset 1be9a6d20566 (bug 1025183) for failures in test_scalarvaluestring.html on B2G/Android; CLOSED TREE 2014-08-01 10:28:52 +01:00
Boris Zbarsky 0511225e67 Bug 1045743. Add support for the Promise<type> syntax to Web IDL bindings. r=khuey 2014-07-31 23:50:30 -04:00
Ben Kelly 3e5f087f4e Bug 1025183 P1 Add ScalarValueString to webidl parser. r=bz 2014-07-31 19:40:11 -04:00
Reuben Morais bb157707dd Bug 1009645 - Address additional comments. r=bz
--HG--
extra : rebase_source : c6befdd143ad15751182af10f80b03c2f23eea4d
2014-07-15 16:15:28 -03:00
Reuben Morais 90781169de Bug 1009645 - Implement [FeatureDetectible] extended attribute and hook it up to navigator.getFeature. r=bz 2014-07-14 20:08:45 -03:00
Boris Zbarsky 7a6b7bfb5f Bug 832014 part 6. Make it possible to specify that only a particular interface that implements a given consequential interface gets cross-origin-settable behavior for a particular property. r=bholley 2014-07-11 19:32:14 -04:00
Boris Zbarsky a57cc37a52 Bug 832014 part 1. Add parser support for an [Unforgeable] annotation on WebIDL interfaces. r=peterv 2014-07-11 19:30:26 -04:00
Ms2ger 3b4a60ee80 Bug 1034204 - Implement unforgeable methods; r=bz 2014-07-04 15:02:10 +02:00
Kyle Huey d16856bfd5 Bug 1031051: Part 1 - Allow codegenerating an InitFooEvent method for legacy event types. r=smaug,bz 2014-06-30 16:00:31 -07:00
Ben Kelly 69fff9e05a Bug 1029812 Make webidl Sequence and MozMap distinguishable. r=bz 2014-06-25 10:25:09 -07:00
Boris Zbarsky ddcf724011 Bug 767924 part 4. Allow [] as a default value for sequences in unions. r=peterv 2014-06-23 16:03:58 -04:00
Boris Zbarsky 6c70fe8c81 Bug 1026080 part 1. Add WebIDL parser support for [] as a default value for sequence arguments and dictionary entries. r=khuey 2014-06-23 16:03:56 -04:00
Boris Zbarsky 1c9ae3ed33 Bug 1026706. Stop pickling our yacc grammar in the WebIDL parser, because now it's apparently faster to recreate it than to unpickle it. r=khuey 2014-06-23 16:03:56 -04:00
Reuben Morais 978af66e3d Bug 952486 - Add a CheckPermissions extended attribute to WebIDL. r=bz 2014-05-25 15:31:07 -03:00
Fabrice Desré 2deb233e1d Bug 952486 - backout for breaking all device and emulator builds (keeping dom reviewer to land the backout...) r=bz 2014-05-26 12:11:52 -07:00
Reuben Morais 1d0db64ab8 Bug 952486 - Add a CheckPermissions extended attribute to WebIDL. r=bz 2014-05-25 15:31:07 -03:00
Boris Zbarsky cfbf67619d Bug 1007878 part 1. Add parsing of MozMap to the WebIDL parser. r=khuey 2014-05-23 17:32:38 -04:00
Wes Kocher 5b516d6682 Backed out 5 changesets (bug 1007878) for b2g build bustage r=khuey
Backed out changeset ee3bb06075f7 (bug 1007878)
Backed out changeset ab3dd51be3cd (bug 1007878)
Backed out changeset aa53ba4e64b8 (bug 1007878)
Backed out changeset ff6fd8187ff3 (bug 1007878)
Backed out changeset d631378463ac (bug 1007878)
2014-05-23 15:10:51 -07:00
Boris Zbarsky 0cca97fdf1 Bug 1007878 part 1. Add parsing of MozMap to the WebIDL parser. r=khuey 2014-05-23 17:32:38 -04:00
Ting-Yu Lin 77b8dbd3ad Bug 879917 - part 2: Emit useful message on dictionary name collisions. r=bz 2014-05-05 21:50:00 +02:00
Ting-Yu Lin cbc6a7ce1f Bug 879917 - part 1: Strip trailing whitespaces in WebIDL.py. r=bz 2014-05-05 21:24:00 +02:00
Boris Zbarsky e6d3aa3377 Bug 997285 part 2. Add [ExceptionClass] support to WebIDL. r=peterv 2014-05-05 16:01:57 -04:00
Wes Kocher 3afa6d1ec8 Backed out 4 changesets (bug 997285) for mochitest-2,3 and dt3 bustages on a CLOSED TREE r=bz
Backed out changeset 1bc5b733beac (bug 997285)
Backed out changeset ec145c86be71 (bug 997285)
Backed out changeset c0b8aef8b570 (bug 997285)
Backed out changeset 477094180dff (bug 997285)
2014-05-05 14:14:11 -07:00
Boris Zbarsky 5c370770a6 Bug 997285 part 2. Add [ExceptionClass] support to WebIDL. r=peterv 2014-05-05 16:01:57 -04:00
Boris Zbarsky 1da745b30f Bug 985536. Go back to allowing optional any with no default value in WebIDL, but treat it as having a default value of undefined. r=khuey 2014-04-03 23:32:11 -04:00
Anvas 40e7bcc3c6 Bug 946897 - Report a more helpful error message when there is a name collision between an IDLExternalInterface and some other named IDL object. r=khuey 2014-03-22 00:25:40 -04:00
Boris Zbarsky a4309c8b4e Bug 983300 part 2. Introduce a GenericPromiseReturningBindingMethod for methods that return Promise return value. r=khuey,bholley
This method effectively catches exceptions from GenericBindingMethod and converts them into rejected promises.  This handles calls to Promise-returning APIs from everything except Ion fast paths.
2014-03-21 12:18:24 -04:00
Boris Zbarsky f40021934e Bug 983300 part 1. Disallow Promise as a return type for legacy callers and enforce all overloads for a method either returning promises or not returning promises. r=khuey 2014-03-21 12:18:24 -04:00
Boris Zbarsky 7ee245a69d Bug 970764. Remove support for non-optional "any" arguments values, since "any" needs to be able to include undefined anyway. Have "any" arguments and dictionary entries default to undefined unless the IDL explicitly says "= null". r=khuey 2014-02-19 10:13:38 -05:00
Ehsan Akhgari 4a415b8dd7 Bug 968643 - Part 2: Remove the [PrefControlled] WebIDL annotation; r=bzbarsky 2014-02-06 13:28:35 -05:00
Boris Zbarsky 4ecbf2387a Bug 958667 part 4. Hook up an AvailableIn extended attribute for interfaces. r=peterv 2014-02-05 13:38:17 -05:00
Boris Zbarsky 5c995f6064 Bug 963321 part 1. Add WebIDL parser support for having [Cached] dictionary attributes. r=khuey
We don't know at handleExtendedAttribute time what the identifier will
map to, so have to do the check that [Frozen] is not being misused
later.
2014-02-05 13:38:15 -05:00
Andrea Marchesini afee094f1c Bug 620935 - __noSuchMethod__ support for WebIDL r=bz 2014-01-26 12:35:10 +00:00
Boris Zbarsky 0bc28e81b8 Bug 952365. Add a TreatNonObjectAsNull annotation for WebIDL callback functions and use it for event handlers, since web sites depend on assigning non-callable objects to them in some cases. r=peterv 2014-01-13 15:08:56 -05:00
Nikhil Marathe fdba61883d Bug 957429 - Method parameters that are callbacks obey [TreatNonCallableAsNull] semantics. r=bz 2014-01-08 22:12:27 -08:00
Boris Zbarsky ea8d385a26 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 fc8f65ba99 Bug 946564 part 2. Make window._content chromeonly and define it in WebIDL. r=peterv 2013-12-09 10:34:04 -05:00
Boris Zbarsky 1815e242b3 Bug 946067 part 1. Add support for WebIDL extended attributes to allow annotating allowed cross-origin access. r=peterv 2013-12-09 10:34:03 -05:00
Boris Zbarsky 21df6dd5cf 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 be8f33b2af 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 da56c38e0b Bug 942631 part 1. Add support for a [Cached] WebIDL annotation. r=peterv 2013-12-04 08:02:17 -05:00
Boris Zbarsky 4ffa18ba5a Bug 938355 part 2. Relax the restriction on [Pure] not mixing with [Throws] and annotate some more things as [Pure]. r=peterv 2013-12-02 09:50:34 -05:00
Boris Zbarsky 5cf0773f3d Bug 938294 part 1. Allow the [Pure] annotation on non-throwing DOM methods. r=peterv 2013-11-25 20:59:39 -05:00
Boris Zbarsky 7618cffabd Bug 935855 part 4. Codegen a function that updates all the members-in-reserved-slots values for an interface and call it when we finish wrapping an object. r=peterv 2013-11-25 20:59:38 -05:00
Boris Zbarsky ddb0fa4d92 Bug 935855 part 3. Compute the right slot indices to use for members we want to store in slots and save then in the data model the WebIDL parser outputs. r=peterv 2013-11-25 20:59:38 -05:00
Boris Zbarsky 740b35f91a Bug 935855 part 2. Store isSlot information in jitinfo. r=peterv,efaust 2013-11-25 20:59:37 -05:00
Boris Zbarsky 60a3c87fe7 Bug 935855 part 1. Add a [StoreInSlot] WebIDL annotation to bindings. r=peterv 2013-11-25 20:59:34 -05:00
Peter Van der Beken 794b2d6bd9 Bug 938544 - Add support for a Chrome-only constructor in WebIDL. r=bz.
--HG--
extra : rebase_source : e36fef0090d57947ceae6c2fc11bea8b115423e4
2013-08-12 16:45:33 +02:00
Boris Zbarsky 44a1bbf863 Bug 936634. Drop support for [TreatUndefinedAs] in WebIDL. r=peterv 2013-11-17 00:10:18 -05:00
Reuben Morais 3a1212943a Bug 933054 - Allow the toJSON identifier to be used in WebIDL interfaces again. r=peterv
--HG--
extra : rebase_source : 83c7724f97d0b2ce709092f2aaf7e15e682c3d90
2013-11-01 14:01:00 -02:00
Boris Zbarsky 20b04d6057 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 a2f07bbb8a 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
Boris Zbarsky 97c2bf7f74 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
Peter Van der Beken 70d1256549 Bug 922159 - Rename Creator WebIDL extended attribute to NewObject. r=bz.
--HG--
extra : rebase_source : 80791f28acbf8e2cc21946b0d62bb8555b53fc99
2013-09-30 18:32:22 +02:00
Ed Morley ef2d7c5fe8 Backed out changeset 64a19bc0e198 (bug 922159) for compilation failures on a CLOSED TREE 2013-10-23 15:51:48 +01:00
Peter Van der Beken 538eed5d23 Bug 922159 - Rename Creator WebIDL extended attribute to NewObject. r=bz.
--HG--
extra : rebase_source : 2c09c54f42a111d27b0d57346ca7d80f440eca09
2013-09-30 18:32:22 +02:00
Tareq Khandaker 54c85e8f1c Bug 924397 - WebIDL parser doesn't specify file when encountering syntax error at end of file. r=jdm 2013-10-18 10:17:00 -04:00
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