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

Side by Side Diff: pkg/compiler/lib/src/js_backend/enqueuer.dart

Issue 2506393002: Enhance precision of recorded instantiation info in ResolutionWorldBuilder (Closed)
Patch Set: Updated cf. comments. Created 4 years, 1 month 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 unified diff | Download patch
« no previous file with comments | « pkg/compiler/lib/src/enqueue.dart ('k') | pkg/compiler/lib/src/resolution/members.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.js.enqueue; 5 library dart2js.js.enqueue;
6 6
7 import 'dart:collection' show Queue; 7 import 'dart:collection' show Queue;
8 8
9 import '../common/backend_api.dart' show Backend; 9 import '../common/backend_api.dart' show Backend;
10 import '../common/codegen.dart' show CodegenWorkItem; 10 import '../common/codegen.dart' show CodegenWorkItem;
11 import '../common/names.dart' show Identifiers; 11 import '../common/names.dart' show Identifiers;
12 import '../common/tasks.dart' show CompilerTask; 12 import '../common/tasks.dart' show CompilerTask;
13 import '../common/work.dart' show WorkItem; 13 import '../common/work.dart' show WorkItem;
14 import '../common.dart'; 14 import '../common.dart';
15 import '../compiler.dart' show Compiler; 15 import '../compiler.dart' show Compiler;
16 import '../dart_types.dart' show DartType, InterfaceType; 16 import '../dart_types.dart' show DartType, InterfaceType;
17 import '../elements/elements.dart' 17 import '../elements/elements.dart'
18 show 18 show
19 ClassElement, 19 ClassElement,
20 ConstructorElement,
21 Element, 20 Element,
22 Elements, 21 Elements,
23 Entity, 22 Entity,
24 FunctionElement, 23 FunctionElement,
25 LibraryElement, 24 LibraryElement,
26 Member, 25 Member,
27 MemberElement, 26 MemberElement,
28 MethodElement, 27 MethodElement,
29 Name, 28 Name,
30 TypedElement, 29 TypedElement,
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after
371 // Also [CLOSURE] contains [LocalFunctionElement] which we cannot 370 // Also [CLOSURE] contains [LocalFunctionElement] which we cannot
372 // enqueue. 371 // enqueue.
373 addElement = false; 372 addElement = false;
374 break; 373 break;
375 case StaticUseKind.SUPER_FIELD_SET: 374 case StaticUseKind.SUPER_FIELD_SET:
376 case StaticUseKind.SUPER_TEAR_OFF: 375 case StaticUseKind.SUPER_TEAR_OFF:
377 case StaticUseKind.GENERAL: 376 case StaticUseKind.GENERAL:
378 break; 377 break;
379 case StaticUseKind.CONSTRUCTOR_INVOKE: 378 case StaticUseKind.CONSTRUCTOR_INVOKE:
380 case StaticUseKind.CONST_CONSTRUCTOR_INVOKE: 379 case StaticUseKind.CONST_CONSTRUCTOR_INVOKE:
380 case StaticUseKind.REDIRECTION:
381 registerTypeUse(new TypeUse.instantiation(staticUse.type)); 381 registerTypeUse(new TypeUse.instantiation(staticUse.type));
382 break; 382 break;
383 case StaticUseKind.DIRECT_INVOKE: 383 case StaticUseKind.DIRECT_INVOKE:
384 _registerInstanceMethod(staticUse.element); 384 _registerInstanceMethod(staticUse.element);
385 break; 385 break;
386 } 386 }
387 if (addElement) { 387 if (addElement) {
388 addToWorkList(element); 388 addToWorkList(element);
389 } 389 }
390 } 390 }
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
545 @override 545 @override
546 void visitStaticUse(StaticUse staticUse) { 546 void visitStaticUse(StaticUse staticUse) {
547 enqueuer.registerStaticUse(staticUse); 547 enqueuer.registerStaticUse(staticUse);
548 } 548 }
549 549
550 @override 550 @override
551 void visitTypeUse(TypeUse typeUse) { 551 void visitTypeUse(TypeUse typeUse) {
552 enqueuer.registerTypeUse(typeUse); 552 enqueuer.registerTypeUse(typeUse);
553 } 553 }
554 } 554 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/enqueue.dart ('k') | pkg/compiler/lib/src/resolution/members.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698