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

Side by Side Diff: pkg/compiler/lib/src/deferred_load.dart

Issue 2989453002: Add support for compiling Dart via the FE in dart2js. (Closed)
Patch Set: update status Created 3 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 deferred_load; 5 library deferred_load;
6 6
7 import 'common/tasks.dart' show CompilerTask; 7 import 'common/tasks.dart' show CompilerTask;
8 import 'common.dart'; 8 import 'common.dart';
9 import 'compiler.dart' show Compiler; 9 import 'compiler.dart' show Compiler;
10 import 'constants/expressions.dart' show ConstantExpression; 10 import 'constants/expressions.dart' show ConstantExpression;
(...skipping 796 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 _assignNamesToOutputUnits(allOutputUnits); 807 _assignNamesToOutputUnits(allOutputUnits);
808 })); 808 }));
809 // Notify the impact strategy impacts are no longer needed for deferred 809 // Notify the impact strategy impacts are no longer needed for deferred
810 // load. 810 // load.
811 compiler.impactStrategy.onImpactUsed(IMPACT_USE); 811 compiler.impactStrategy.onImpactUsed(IMPACT_USE);
812 } 812 }
813 813
814 void beforeResolution(LibraryEntity mainLibrary) { 814 void beforeResolution(LibraryEntity mainLibrary) {
815 if (mainLibrary == null) return; 815 if (mainLibrary == null) return;
816 // TODO(johnniwinther): Support deferred load for kernel based elements. 816 // TODO(johnniwinther): Support deferred load for kernel based elements.
817 if (compiler.options.loadFromDill) return; 817 if (compiler.options.useKernel) return;
818 _allDeferredImports[_fakeMainImport] = mainLibrary; 818 _allDeferredImports[_fakeMainImport] = mainLibrary;
819 var lastDeferred; 819 var lastDeferred;
820 // When detecting duplicate prefixes of deferred libraries there are 4 820 // When detecting duplicate prefixes of deferred libraries there are 4
821 // cases of duplicate prefixes: 821 // cases of duplicate prefixes:
822 // 1. 822 // 1.
823 // import "lib.dart" deferred as a; 823 // import "lib.dart" deferred as a;
824 // import "lib2.dart" deferred as a; 824 // import "lib2.dart" deferred as a;
825 // 2. 825 // 2.
826 // import "lib.dart" deferred as a; 826 // import "lib.dart" deferred as a;
827 // import "lib2.dart" as a; 827 // import "lib2.dart" as a;
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
1122 1122
1123 bool operator ==(other) { 1123 bool operator ==(other) {
1124 if (other is! _DeclaredDeferredImport) return false; 1124 if (other is! _DeclaredDeferredImport) return false;
1125 return declaration == other.declaration; 1125 return declaration == other.declaration;
1126 } 1126 }
1127 1127
1128 int get hashCode => declaration.hashCode * 17; 1128 int get hashCode => declaration.hashCode * 17;
1129 1129
1130 String toString() => '$declaration'; 1130 String toString() => '$declaration';
1131 } 1131 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698