Commit Graph

62 Commits

Author SHA1 Message Date
antonm@google.com 689c8a2fc5 Split to dart conversion and argument expression logic.
R=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10827046

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11043 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-21 13:53:12 +00:00
sra@google.com 1d36a8f5a5 Remove old feature for generating canned native bodies.
It is obsolete - it was used only for the deprecated dom library.

Review URL: https://chromiumcodereview.appspot.com//10825438

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@10937 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-19 02:25:39 +00:00
antonm@google.com bc4831e99f Unify null treatment.
Always use WithNullCheck suffix instead of a special flag.

TBR=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10829037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9940 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-26 14:59:48 +00:00
antonm@google.com 537abe2e71 Unify processing of the cases when argument is declared optional in IDLs and is not optional in WebKit.
R=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10828031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9937 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-26 14:16:02 +00:00
dgrove@google.com 89dd99fdd0 Convert DOM and HTML frog to dart2js.
Review URL: https://chromiumcodereview.appspot.com//10800104

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9871 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-24 22:45:59 +00:00
podivilov@google.com e79091fc3b Do not treat callbacks with no handlers as interfaces.
R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10789010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9734 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-18 10:45:06 +00:00
podivilov@google.com ba33c7f62a Support proper emission of V8Scope handles.
R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10807007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9732 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-18 10:35:47 +00:00
podivilov@google.com 6b19d0e60a Properly generate MutationCallback in dart:html.
* add support for custom callbacks (MutationCallback.handleEvent is custom)
* add MutationRecordArray to type registry, so MutationCallback.handleEvent
is not removed because of unknown parameter type

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10785035

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9713 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-17 17:30:18 +00:00
sra@google.com d462048a9b Revert "Handle all registered types, not just 'Primitive' ones."
Review URL: https://chromiumcodereview.appspot.com//10779024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9689 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-16 23:56:02 +00:00
sra@google.com 26df219473 Handle all registered types, not just 'Primitive' ones.
This change preserves the name through to the generated C++ code.

Review URL: https://chromiumcodereview.appspot.com//10704219

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9688 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-16 23:14:57 +00:00
sra@google.com 3225b5b1bd Fix dom generation after renamer refactoring.
Review URL: https://chromiumcodereview.appspot.com//10704238

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9685 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-16 22:11:07 +00:00
podivilov@google.com 29f943e1af Extract interfaces and members renaming logic to a new HtmlRenamer class.
R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10703194

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9660 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-16 13:02:27 +00:00
podivilov@google.com 23cf5e33c2 Stop passing HtmlSystemShared around and move html renaming to IDLTypeInfo.
R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10698108

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9636 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-13 16:28:43 +00:00
podivilov@google.com f7cc41b276 Introduce TypeRegistry class.
This is needed to optionally associate additional state like html renames
map with IDLTypeInfo instances.

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10702202

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9634 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-13 16:16:17 +00:00
podivilov@google.com a785e89775 Do not split attributes on getters and setters in databasebuilder.
So we don't have to combine them again in generator.

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10704100

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9414 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-05 09:00:42 +00:00
sra@google.com 5d7b0b56d0 Omit '= null' as default value in generated dart:html code.
Review URL: https://chromiumcodereview.appspot.com//10698056

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9303 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-02 17:33:44 +00:00
podivilov@google.com 20fe182f7a Make per-interface generators an implementation detail of a system.
DartGenerator shouldn't know about per-interface generators
as it stiffles further refactoring and makes code reuse harder.

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10700006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9239 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-29 09:37:12 +00:00
podivilov@google.com 50ab479fb8 Stop using ParameterAdapter<String> in generated code.
R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10657047

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9152 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-27 09:18:54 +00:00
podivilov@google.com 1d3895b567 Remove ParameterAdapters for all types except for String.
R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10662047

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9113 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-26 14:36:33 +00:00
antonm@google.com 85a0c9635c Proper support for IDL arrays in generators.
R=podivilov@chromium.org,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10584031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8969 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-21 10:43:11 +00:00
sra@google.com 8931de0b9d Fix DataView constructor and byte accessors.
Custom constructor is not yet implemented for Dartium.

Try again with Dartium and FF tests suppressed.

Review URL: https://chromiumcodereview.appspot.com//10540175

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8707 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 04:01:40 +00:00
sra@google.com f13edb18ec Revert "Fix DataView constructor and byte accessors."
Review URL: https://chromiumcodereview.appspot.com//10548065

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8706 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 03:24:23 +00:00
sra@google.com 790589d941 Fix DataView constructor and byte accessors.
Custom constructor is not yet implemented for Dartium.

Review URL: https://chromiumcodereview.appspot.com//10539170

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8705 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-15 03:10:07 +00:00
podivilov@google.com a93c755ea2 Use original WebKit IDL database for dart:html generation.
This will allow us to use the same database to generate both frog and native implementations.

R=antonm@google.com,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10542036

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8458 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-08 18:03:10 +00:00
antonm@google.com 7ce9049f3f Support custom constructors with signature declaration.
For now Intent is the only IDL interface which has both CustomConstructor
attribute and singnature for the constructor.  CustomConstructor should
trump the signature.

R=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10533064

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8451 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-08 17:12:14 +00:00
podivilov@google.com 3ace6e9de0 Fix dart to native dispatch.
R=antonm@google.com,sra@google.com
TEST=indexeddb_3_test

Review URL: https://chromiumcodereview.appspot.com//10543023

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8341 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-06 15:12:18 +00:00
podivilov@google.com 16391d794c Implement v8-like overload resolving.
This is needed to fix indexeddb_3_test and several bugs related to overload dispatching.

R=antonm@google.com
BUG=3353
TEST=indexeddb_3_test

Review URL: https://chromiumcodereview.appspot.com//10513004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8278 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-05 13:08:16 +00:00
podivilov@google.com d699e26bae Move splitting operations with optional arguments to generator.
To generate v8-like overload resolver we need original list of overloads.
It is much easier to slit operations in generator where needed than to split
them in databasebuilder and then combine again in generator.

R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10517004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8277 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-05 12:02:53 +00:00
podivilov@google.com c16bbe9f2f Add PositionOptions type to registry.
R=antonm@google.com

Review URL: https://chromiumcodereview.appspot.com//10483004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8242 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-04 10:24:52 +00:00
sra@google.com 4b4991d659 Revert "Revert "Rework Element constructors""
This CL is r8182 plus some other bug fixes to get to green.

The main change is that the first parent of an interface could be a
pure interface.  In that case, it should be treated as a secondary parent
interface, not as the primary implementation inheritance parent.

Review URL: https://chromiumcodereview.appspot.com//10443122

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8184 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-01 07:14:14 +00:00
sra@google.com b4b0bae90d Revert "Rework Element constructors"
Review URL: https://chromiumcodereview.appspot.com//10451105

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8183 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-01 04:25:29 +00:00
sra@google.com 3614cf1500 Rework Element constructors
It turns out we want different types in the frog vs dartium bodies.
We want the implementation type for frog to help with live type analysis.
We can't use the only slightly less general interface type because the language mandates a warning.

So we now generate the factory constructors for each implementation system rather than once for the interfaces system.

I also extended the mechanism to handle multiple element constructors
and used it to generate HeadingElement.h1() through
HeadingElement.h6()

Review URL: https://chromiumcodereview.appspot.com//10442125

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8182 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-01 03:44:47 +00:00
antonm@google.com 55e3af5afb Remove SVGViewSpec from pure interface list.
TBR=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10463002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8111 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-30 16:14:51 +00:00
vsm@google.com 9be4ac00ed Move dart:dom to dart:dom_deprecated
Brian: Can you please look at the editor / dartc changes?

Bob: Can you look at the apidoc changes?

Stephen/Pavel: Can you guys look at the rest?

Pavel: I will update, test, and land your Dartium CL along with this change.

Review URL: https://chromiumcodereview.appspot.com//10389097

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7587 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-13 04:10:43 +00:00
antonm@google.com 3639e3ab3a Better support for the case of typed arrays inheriting from other typed arrays.
R=podivilov@chromium.org,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10388084

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7580 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-12 08:52:09 +00:00
antonm@google.com 26876b95f2 Fix a build.
TBR=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10384122

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7548 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-11 14:34:35 +00:00
antonm@google.com a03ced9996 Some more __repr__s.
R=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10310119

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7547 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-11 14:31:27 +00:00
antonm@google.com 9fc596d693 Proper support for Uint8ClampedArray.
R=podivilov@chromium.org
TEST=dom/typed_array_{2,4}_test

Review URL: https://chromiumcodereview.appspot.com//10379024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7364 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-05 14:58:52 +00:00
podivilov@google.com 93e5b49bab Remove ParameterAdapters for bindings classes.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10331015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7325 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-04 13:45:56 +00:00
antonm@google.com 2806978be7 Rework static method support.
For now I just nuke them from all generators except for systemnative.

However, that remove two methods from DOMURL.  One of those should probably be a ctor.
The second one is funnier as it looks like legetimate static methods.

R=podivilov@chromium.org,sra@google.com

Review URL: https://chromiumcodereview.appspot.com//10334003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7320 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-04 11:05:29 +00:00
podivilov@google.com 4f4665ea97 Cleanup ParameterAdapter for bindings classes.
ParameterAdapters should have just one template parameter - Dart bindings class.

R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10314005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7271 260f80e4-7a28-3924-810f-c04153c831b5
2012-05-03 09:12:39 +00:00
podivilov@google.com cc8279d0b8 Get rid of overloaded toDartValue.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10217004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6951 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 15:40:56 +00:00
podivilov@google.com db43d3cc2c Generate DartDOMStringList binding.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10207019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6950 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-25 15:38:12 +00:00
vsm@google.com d8b823b1d3 Roll IDL to multivm@439
Added mapping from Dictionary to Map.

TBR=sra

Review URL: https://chromiumcodereview.appspot.com//10211003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6906 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-24 18:05:44 +00:00
podivilov@google.com 1b33610e67 Do not use overloaded toDartValue for bindings classes.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10206017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6904 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-24 17:39:29 +00:00
podivilov@google.com 44c3346fc4 Support custom to native conversions.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10155027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6898 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-24 16:48:57 +00:00
antonm@google.com cb826d4879 Reenable ENABLE_NOTIFICATIONS.
Now those APIs use Dictionary instead of OptionsObject.

R=podivilov@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10180003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6846 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-23 15:31:12 +00:00
podivilov@google.com e7f9fbc391 Do not use overloaded toDartValue for primitive types.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10122011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6797 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-20 13:50:48 +00:00
podivilov@google.com 2899757ad2 Move custom to dart conversion logic to IDLTypeInfo implementations.
This change is the first step towards removing overloaded toDartValue.

R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10119009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6736 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-19 11:45:31 +00:00
podivilov@google.com d80b32703f Introduce CompositeIDLTypeInfo and clean up the code that deals with sequences.
R=antonm@chromium.org

Review URL: https://chromiumcodereview.appspot.com//10116025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6735 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-19 11:26:22 +00:00