Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(606)

Unified Diff: sdk/lib/_internal/compiler/js_lib/js_mirrors.dart

Issue 974803002: Defer addStubs to class instantiation time. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/compiler/js_lib/js_mirrors.dart
diff --git a/sdk/lib/_internal/compiler/js_lib/js_mirrors.dart b/sdk/lib/_internal/compiler/js_lib/js_mirrors.dart
index 2b0005726cd7e3ac224eb99beb7a50c83ba66a69..27dadfb747f49e6f9407d2298a60be07618943df 100644
--- a/sdk/lib/_internal/compiler/js_lib/js_mirrors.dart
+++ b/sdk/lib/_internal/compiler/js_lib/js_mirrors.dart
@@ -1673,6 +1673,10 @@ class JsClassMirror extends JsTypeMirror with JsObjectMirror
List<JsMethodMirror> _getMethodsWithOwner(DeclarationMirror methodOwner) {
var prototype = JS('', '#.prototype', _jsConstructor);
+ // The prototype might not have been processed yet, so do that now.
+ if (JS('bool', '!!#.\$deferredAction', prototype)) {
+ JS('', '#.\$deferredAction()', prototype);
+ }
List<String> keys = extractKeys(prototype);
var result = <JsMethodMirror>[];
for (String key in keys) {

Powered by Google App Engine
This is Rietveld 408576698