Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 library kernel.target.targets; | 4 library kernel.target.targets; |
| 5 | 5 |
| 6 import '../ast.dart'; | 6 import '../ast.dart'; |
| 7 import '../core_types.dart'; | 7 import '../core_types.dart'; |
| 8 import '../transformations/treeshaker.dart' show ProgramRoot; | 8 import '../transformations/treeshaker.dart' show ProgramRoot; |
| 9 import 'dart2js.dart'; | |
| 9 import 'flutter.dart'; | 10 import 'flutter.dart'; |
| 10 import 'vm.dart'; | 11 import 'vm.dart'; |
| 11 import 'vmcc.dart'; | 12 import 'vmcc.dart'; |
| 12 import 'vmreify.dart'; | 13 import 'vmreify.dart'; |
| 13 | 14 |
| 14 final List<String> targetNames = targets.keys.toList(); | 15 final List<String> targetNames = targets.keys.toList(); |
| 15 | 16 |
| 16 class TargetFlags { | 17 class TargetFlags { |
| 17 bool strongMode; | 18 bool strongMode; |
| 18 bool treeShake; | 19 bool treeShake; |
| 19 List<ProgramRoot> programRoots; | 20 List<ProgramRoot> programRoots; |
| 20 Uri kernelRuntime; | 21 Uri kernelRuntime; |
| 21 | 22 |
| 22 TargetFlags( | 23 TargetFlags( |
| 23 {this.strongMode: false, | 24 {this.strongMode: false, |
| 24 this.treeShake: false, | 25 this.treeShake: false, |
| 25 this.programRoots: const <ProgramRoot>[], | 26 this.programRoots: const <ProgramRoot>[], |
| 26 this.kernelRuntime}); | 27 this.kernelRuntime}); |
| 27 } | 28 } |
| 28 | 29 |
| 29 typedef Target _TargetBuilder(TargetFlags flags); | 30 typedef Target _TargetBuilder(TargetFlags flags); |
| 30 | 31 |
| 31 final Map<String, _TargetBuilder> targets = <String, _TargetBuilder>{ | 32 final Map<String, _TargetBuilder> targets = <String, _TargetBuilder>{ |
| 32 'none': (TargetFlags flags) => new NoneTarget(flags), | 33 'none': (TargetFlags flags) => new NoneTarget(flags), |
| 34 'dart2js': (TargetFlags flags) => new Dart2jsTarget(flags), | |
|
ahe
2017/04/27 11:48:31
Since targets is public, you can add this target f
Siggi Cherem (dart-lang)
2017/04/28 21:37:20
Done, actually gone :-) - I have no need to create
| |
| 33 'vm': (TargetFlags flags) => new VmTarget(flags), | 35 'vm': (TargetFlags flags) => new VmTarget(flags), |
| 34 'vmcc': (TargetFlags flags) => new VmClosureConvertedTarget(flags), | 36 'vmcc': (TargetFlags flags) => new VmClosureConvertedTarget(flags), |
| 35 'vmreify': (TargetFlags flags) => new VmGenericTypesReifiedTarget(flags), | 37 'vmreify': (TargetFlags flags) => new VmGenericTypesReifiedTarget(flags), |
| 36 'flutter': (TargetFlags flags) => new FlutterTarget(flags), | 38 'flutter': (TargetFlags flags) => new FlutterTarget(flags), |
| 37 }; | 39 }; |
| 38 | 40 |
| 39 Target getTarget(String name, TargetFlags flags) { | 41 Target getTarget(String name, TargetFlags flags) { |
| 40 var builder = targets[name]; | 42 var builder = targets[name]; |
| 41 if (builder == null) return null; | 43 if (builder == null) return null; |
| 42 return builder(flags); | 44 return builder(flags); |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 87 final TargetFlags flags; | 89 final TargetFlags flags; |
| 88 | 90 |
| 89 NoneTarget(this.flags); | 91 NoneTarget(this.flags); |
| 90 | 92 |
| 91 bool get strongMode => flags.strongMode; | 93 bool get strongMode => flags.strongMode; |
| 92 String get name => 'none'; | 94 String get name => 'none'; |
| 93 List<String> get extraRequiredLibraries => <String>[]; | 95 List<String> get extraRequiredLibraries => <String>[]; |
| 94 void performModularTransformations(Program program) {} | 96 void performModularTransformations(Program program) {} |
| 95 void performGlobalTransformations(Program program) {} | 97 void performGlobalTransformations(Program program) {} |
| 96 } | 98 } |
| OLD | NEW |