Commit Graph

174 Commits

Author SHA1 Message Date
Boris Zbarsky
9f7859e299 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
c4beabb7d0 Bug 766844. Non-callback interfaces must not inherit from callback interfaces. r=jlebar 2012-06-22 16:18:51 -04:00
Boris Zbarsky
b952a86b40 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
6bc1ec5a98 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
491c38b4aa Bug 764456 part 1. Flag consequential interfaces in the WebIDL data model. r=khuey 2012-06-22 16:18:50 -04:00
Boris Zbarsky
cac46ee51d Bug 763724. Detect cycles in the interface inheritance and implementation graph. r=jlebar 2012-06-21 12:29:11 -04:00
Boris Zbarsky
f2d10569f7 Bug 764698. Fix isDistinguishableFrom for dictionaries to work right. r=peterv 2012-06-21 12:29:11 -04:00
Boris Zbarsky
46f92197e9 Bug 763911. Add support for interface members of dictionaries. r=khuey 2012-06-19 12:09:37 -04:00
Boris Zbarsky
3417cf0e8b 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
3c4e09b808 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
d8ef2a3047 Bug 742153 part 1. Add support for dictionaries in the WebIDL parser. r=khuey 2012-06-12 10:22:05 -04:00
Boris Zbarsky
8dfc382e51 Bug 761772. Add support for 'implements' in WebIDL. r=khuey 2012-06-11 18:21:35 -04:00
Boris Zbarsky
4ea745efd2 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
f35a1f3a8e Bug 760749. Make interface type constructor args work in WebIDL bindings. r=khuey 2012-06-04 21:30:00 -04:00
Boris Zbarsky
deafaed880 Bug 750264. Give IDLType an operator!= so that codegen actually works correctly. r=khuey 2012-05-25 01:07:30 -04:00
Kyle Huey
f8d8cd6fc0 Update webidl-parser snapshot to pick up bug 742145. 2012-05-24 21:41:33 -07:00
Gervase Markham
cb6a072c2a Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Boris Zbarsky
84ed2eac92 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
76a5365245 Update the WebIDL Parser to pick up Bug 753459. r=bz 2012-05-09 11:49:56 -07:00
Kyle Huey
8fa99d5489 Sync webidl-parser to m-c to pick up Bug 742141. r=me a=me 2012-05-01 23:23:45 -04:00
Boris Zbarsky
b5c82f95c7 Bug 743820. Update to the changes to WebIDL that made interfaces with indexed properties distinguishable from array and sequence. r=khuey
There are two parts to this change:
1)  Sequences and arrays are now distinguishable from all non-callback interfaces.
2)  To handle that change, overload resolution first tries to convert to the exact
    interface, and only if that fails tries to convert things with indexed properties
    to sequences or arrays.
2012-04-13 13:52:21 -04:00
Kyle Huey
13b0d6354e Bug 741125: Update WebIDL parser. 2012-04-12 15:14:10 -07:00
Boris Zbarsky
64f6069e06 Bug 742167. Give extendedAttribute() a better name. r=khuey 2012-04-10 12:40:12 -04:00
Peter Van der Beken
6233c150b8 Fix for bug 740069 (Generate JS bindings in C++ with a python script for DOM objects on the main thread and in workers. Infrastructure and new bindings for XMLHttpRequest). Patch by bent/bz/bholley/jst/khuey/peterv, r=bent/bz/bholley/jlebar/khuey/peterv/sicking/smaug. 2012-03-30 21:42:20 -07:00