Commit Graph

480 Commits

Author SHA1 Message Date
rmacnak@google.com 0ac7836e8f Implement ClassMirror.reflectedType in dart2js.
BUG=http://dartbug.com/12607
R=ahe@google.com, zarah@google.com

Review URL: https://codereview.chromium.org//103713006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31200 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-17 18:30:28 +00:00
rmacnak@google.com e5d7ada6e9 VM: Support calling through getters in InstanceMirror.delegate.
Implement without accessing private members of dart:core. Fix language test expecting wrong return value.

BUG=http://dartbug.com/15138
R=fschneider@google.com

Review URL: https://codereview.chromium.org//114713002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31140 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-13 18:33:45 +00:00
rmacnak@google.com 967a6c96e9 VM: Match language error when attempting to reflectively instantiate an abstract class.
R=srdjan@google.com

Review URL: https://codereview.chromium.org//114593002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31115 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-12 22:34:10 +00:00
floitsch@google.com 0e61ba3729 Implement work-around for "Placeholder for" error in JS output.
BUG= http://dartbug.com/15602
R=ahe@google.com

Review URL: https://codereview.chromium.org//114353002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31109 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-12 20:43:53 +00:00
rmacnak@google.com 0bc05d6c3c VM: Make ObjectMirror.invoke support getters returning functions.
BUG=http://dartbug.com/15138
R=asiva@google.com

Review URL: https://codereview.chromium.org//112193002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31076 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-11 19:43:48 +00:00
rmacnak@google.com 068f6286ca Implement topLevelMembers, staticMembers, instanceMembers in the VM.
BUG=http://dartbug.com/14632
R=asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//67203002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31056 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-11 02:08:16 +00:00
ngeoffray@google.com 440fe91607 We inline List allocations in dart2js to get the right behavior when the passed length is null. This CL fixes the constructor when invoked through mirrors.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//101823004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31010 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-10 09:27:07 +00:00
zarah@google.com 8aa0a2cd04 Substitute type variables as type arguments.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//95123002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30769 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-29 08:45:43 +00:00
zarah@google.com 6fc7361c23 Remove multitest in lib/mirror/generics_test.
R=karlklose@google.com

Review URL: https://codereview.chromium.org//91113002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30701 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-27 09:44:03 +00:00
zarah@google.com f7dd88c13e Support reflection on generics with dynamic types.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//88473002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30700 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-27 09:09:26 +00:00
rmacnak@google.com 314da361f0 Add demangle utility to Dartium's dart:html. Demangle typedef names in UserVisibleName.
BUG=http://dartbug.com/14892
R=asiva@google.com, vsm@google.com

Review URL: https://codereview.chromium.org//79023010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30636 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-25 18:31:20 +00:00
ngeoffray@google.com bb008d1126 Bailout on array optimizations if the array might escape to reflection land.
R=kasperl@google.com

Review URL: https://codereview.chromium.org//85783002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30629 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-25 14:00:39 +00:00
zarah@google.com d997b51cf3 Change type of parameter with 'var' as modifier in initializing formals to the static type of the field.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//83453002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30617 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-25 11:43:58 +00:00
rmacnak@google.com 307dfe1bde Fix crash evaluating metadata with super in a const constructor argument.
R=hausner@google.com

Review URL: https://codereview.chromium.org//76963003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30491 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-21 00:11:31 +00:00
rmacnak@google.com a9c7171aa2 Allow creation of public symbols using MirrorSystem.getSymbol when passing a null library.
R=asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//61753019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30435 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-20 01:33:24 +00:00
rmacnak@google.com f76f7f7ecf Handle undefined field/getter access from arguments to const constructors in metadata, and related problematic cases.
BUG=http://dartbug.com/13817
R=hausner@google.com

Review URL: https://codereview.chromium.org//68333007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30385 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-19 01:02:26 +00:00
rmacnak@google.com bc39a8afe8 When ClassMirrors are created by enumerating members of a LibraryMirror, have the ClassMirror use that LibraryMirror as its owner.
BUG=http://dartbug.com/14449
R=asiva@google.com

Review URL: https://codereview.chromium.org//68103016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30291 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-14 20:35:59 +00:00
rmacnak@google.com 5e310f4e31 Update mirror tests for removed API and other analyzer warnings.
BUG=http://dartbug.com/14695
R=gbracha@google.com

Review URL: https://codereview.chromium.org//64793003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30290 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-14 19:55:05 +00:00
zarah@google.com cf17a98d70 Reapply "Retain types of toplevel and instance variables for reflection."
This reverts commit r30222.

R=karlklose@google.com

Review URL: https://codereview.chromium.org//61683007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30224 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-13 12:43:19 +00:00
zarah@google.com 7e41b9a3ec Revert "Retain types of toplevel and instance variables for reflection."
This reverts commit r30220.

Review URL: https://codereview.chromium.org//70073004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30222 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-13 10:04:56 +00:00
zarah@google.com 210f198e8e Retain types of toplevel and instance variables for reflection.
R=johnniwinther@google.com, karlklose@google.com

Review URL: https://codereview.chromium.org//68343012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30220 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-13 09:21:36 +00:00
rmacnak@google.com 1dcc9ea681 Ensure constructorName symbols include private manglings.
R=asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//53883002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30178 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-11 23:08:38 +00:00
rmacnak@google.com cc3e05ea99 Implement VariableMirror.isConst in the VM and ParameterMirror.isConst in dart2js.
BUG=http://dartbug.com/14671
R=ahe@google.com, asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//58183003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30161 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-11 17:54:58 +00:00
rmacnak@google.com 93d342b42e Use the runtime for generic subsitution of variable types, return types, parameter types.
BUG=http://dartbug.com/14613
BUG=http://dartbug.com/14156
R=gbracha@google.com, regis@google.com

Review URL: https://codereview.chromium.org//62273003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30120 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-08 17:54:59 +00:00
iposva@google.com 1cae21b556 - Reverting mirror changes.
Review URL: https://codereview.chromium.org//62373008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30029 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-07 02:07:37 +00:00
iposva@google.com a2d280501e - Reverting mirror changes.
Review URL: https://codereview.chromium.org//63563003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30027 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-07 01:48:45 +00:00
rmacnak@google.com bc897425e1 Cascaded mirror removal revert.
Review URL: https://codereview.chromium.org//63363003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30024 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-07 01:20:51 +00:00
rmacnak@google.com 1caa73df59 Remove implementations of mirror methods not in the API from the VM. Update tests.
R=iposva@google.com

Review URL: https://codereview.chromium.org//63063002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30005 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-06 22:30:45 +00:00
zarah@google.com 8ad9e7596e Add 'declarations' getter in JsTypeBoundClassMirror.
R=ahe@google.com

Review URL: https://codereview.chromium.org//60423007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29968 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-06 12:19:59 +00:00
zarah@google.com 48818779ea Reapply "Substitute types in generic superclasses and interfaces." .
This reverts commit r29553.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//51113013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29725 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-01 07:51:27 +00:00
rmacnak@google.com 9a41994d31 Handle metadata with qualified identifiers.
BUG=http://dartbug.com/11857
BUG=http://dartbug.com/14652
R=gbracha@google.com, hausner@google.com

Review URL: https://codereview.chromium.org//40863002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29720 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-01 01:19:31 +00:00
rmacnak@google.com 07c3de9310 Mirror implementation removals: async invoke, mirrorSystemOf(port), Mirror.mirrors.
(API was removed in r29492)

R=ahe@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//23460050

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29698 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 21:01:59 +00:00
rmacnak@google.com f3384bf0eb Hide ClosureMirror.findInContext behind a flag for 1.0.
Test findInContext does not wildcard privates. Fix confused test and implementation that expected inheritance of static members.

BUG=http://dartbug.com/13656
R=ahe@google.com, asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//52953002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29697 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 20:50:17 +00:00
rmacnak@google.com 05bd81f872 Align behavior of VM's ObjectMirror.setField with language semantics.
R=ahe@google.com, asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//38543002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29692 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 20:21:01 +00:00
sgjesse@google.com c38de04d0c Change dart:io Platform.script to return a Uri.
BUG=
R=sgjesse@google.com

Review URL: https://codereview.chromium.org//46063010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29651 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 07:29:01 +00:00
whesse@google.com 4f08151090 Revert "Change dart:io Platform.script to return a Uri."
This reverts r29619 and r29624.  The changes look fine on the buildbot,
but need review before adding to the repository.

BUG=

TBR=sgjesse@google.com

Review URL: https://codereview.chromium.org//52723007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29627 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 02:17:37 +00:00
whesse@google.com cb0110350a Change dart:io Platform.script to return a URI. Change all uses of Platform.script to work with the new value.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//53313007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29619 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 01:08:11 +00:00
rmacnak@google.com 4f580969d8 Tests and docs for instanceMembers, staticMembers, toplevelMembers.
BUG=http://dartbug.com/14632
BUG=http://dartbug.com/14633
R=ahe@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//44813004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29593 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-30 22:09:54 +00:00
rmacnak@google.com de5ab09605 Implement ObjectMirror.[] the VM.
R=ahe@google.com

Review URL: https://codereview.chromium.org//25741005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29578 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-30 19:02:46 +00:00
zarah@google.com 537464fb50 Revert "Substitute types in generic superclasses and interfaces."
This reverts commit r29545.

Review URL: https://codereview.chromium.org//51883006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29553 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-30 15:18:52 +00:00
ahe@google.com 36e2df1a1d Mirrors overhaul.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//23455028

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29551 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-30 14:58:58 +00:00
zarah@google.com ca06578fa2 Substitute types in generic superclasses and interfaces.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//47743011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29545 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-30 14:01:28 +00:00
lrn@google.com f0a1c922a2 Reapply "Remove @deprecated features."
R=scheglov@google.com, sgjesse@google.com

Review URL: https://codereview.chromium.org//50413005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29535 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-30 12:09:15 +00:00
rmacnak@google.com 0abc881d9e Mirror API removals: async invocations, mirrorSystemOf(port), Mirror.mirrors.
R=ahe@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//45293002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29492 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-29 21:14:19 +00:00
rmacnak@google.com d836e018c4 Add missing coverage for generics properties of dynamic and void. Fix reflectType(dynamic) in dart2js.
R=ahe@google.com, gbracha@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org//46303004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29455 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-29 16:35:36 +00:00
rmacnak@google.com 56ce946cbf Re-triage mirror test failures on the analyzer.
R=kustermann@google.com, regis@google.com

Review URL: https://codereview.chromium.org//49083004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29407 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-29 00:15:57 +00:00
rmacnak@google.com bcb8707fcd Test reflecting on an object that implements Function but has no call method.
BUG=http://dartbug.com/13957
R=asiva@google.com, gbracha@google.com

Review URL: https://codereview.chromium.org//26777002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29374 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-28 17:25:47 +00:00
rmacnak@google.com 28ff5031e9 Remove now-prohibited default values from optional parameters of redirecting constructors in mirror tests.
BUG=http://dartbug.com/14285
BUG=http://dartbug.com/14472
R=regis@google.com

Review URL: https://codereview.chromium.org//45993002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29300 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-25 23:21:25 +00:00
rmacnak@google.com 5963f11d75 dart2js: The name of a library without a library declaration is the empty string.
BUG=http://dartbug.com/10580
R=gbracha@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org//26291005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29263 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-25 17:16:10 +00:00
rmacnak@google.com 8ee11af36f Add LibraryMirror.declarations and ClassMirror.declarations to the API and both implementations.
Fix bug where partially unmangled names were used in constructor names.

Fix bug where type variables were considered static.

R=gbracha@google.com, johnniwinther@google.com

Review URL: https://codereview.chromium.org//36023003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29261 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-25 17:05:49 +00:00