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

Unified Diff: pkg/dev_compiler/lib/src/compiler/command.dart

Issue 2757753002: Migrate DDC to the new analysis driver.
Patch Set: Rebase Created 3 years, 6 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: pkg/dev_compiler/lib/src/compiler/command.dart
diff --git a/pkg/dev_compiler/lib/src/compiler/command.dart b/pkg/dev_compiler/lib/src/compiler/command.dart
index af34e95f711c3490304d9cd70cff1f4cfdcaa5f6..b778c5b532574089144ed5bafab346ecb30fe854 100644
--- a/pkg/dev_compiler/lib/src/compiler/command.dart
+++ b/pkg/dev_compiler/lib/src/compiler/command.dart
@@ -2,6 +2,7 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
+import 'dart:async';
import 'dart:io';
import 'package:analyzer/src/command_line/arguments.dart'
show
@@ -13,10 +14,10 @@ import 'package:analyzer/src/summary/package_bundle_reader.dart'
show ConflictingSummaryException, InSummarySource;
import 'package:args/args.dart' show ArgParser, ArgResults;
import 'package:args/command_runner.dart' show UsageException;
+import 'package:dev_compiler/src/compiler/compiler.dart';
import 'package:path/path.dart' as path;
import '../analyzer/context.dart' show AnalyzerOptions;
-import 'compiler.dart' show BuildUnit, CompilerOptions, ModuleCompiler;
import 'module_builder.dart';
const _binaryName = 'dartdevc';
@@ -28,7 +29,7 @@ bool _verbose = false;
/// This handles argument parsing, usage, error handling.
/// See bin/dartdevc.dart for the actual entry point, which includes Bazel
/// worker support.
-int compile(List<String> args, {void printFn(Object obj)}) {
+Future<int> compile(List<String> args, {void printFn(Object obj)}) async {
printFn ??= print;
ArgResults argResults;
@@ -57,7 +58,7 @@ int compile(List<String> args, {void printFn(Object obj)}) {
}
try {
- _compile(argResults, analyzerOptions, printFn);
+ await _compile(argResults, analyzerOptions, printFn);
return 0;
} on UsageException catch (error) {
// Incorrect usage, input file not found, etc.
@@ -131,8 +132,8 @@ bool _changed(List<int> list1, List<int> list2) {
return false;
}
-void _compile(ArgResults argResults, AnalyzerOptions analyzerOptions,
- void printFn(Object obj)) {
+Future<Null> _compile(ArgResults argResults, AnalyzerOptions analyzerOptions,
+ void printFn(Object obj)) async {
var compiler = new ModuleCompiler(analyzerOptions);
var compilerOpts = new CompilerOptions.fromArguments(argResults);
var outPaths = argResults['out'] as List<String>;
@@ -183,7 +184,7 @@ void _compile(ArgResults argResults, AnalyzerOptions analyzerOptions,
var unit = new BuildUnit(modulePath, libraryRoot, argResults.rest,
(source) => _moduleForLibrary(moduleRoot, source, compilerOpts));
- var module = compiler.compile(unit, compilerOpts);
+ JSModuleFile module = await compiler.compile(unit, compilerOpts);
module.errors.forEach(printFn);
if (!module.isValid) {
« no previous file with comments | « pkg/dev_compiler/lib/src/compiler/code_generator.dart ('k') | pkg/dev_compiler/lib/src/compiler/compiler.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698