| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 import 'dart:io'; | 5 import 'dart:io'; |
| 6 | 6 |
| 7 import 'dart:async' show | 7 import 'dart:async' show |
| 8 EventSink, | 8 EventSink, |
| 9 Future, | 9 Future, |
| 10 Stream, | 10 Stream, |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 try { | 85 try { |
| 86 diagnosticHandler(uri, begin, end, message, kind); | 86 diagnosticHandler(uri, begin, end, message, kind); |
| 87 } catch (e) { | 87 } catch (e) { |
| 88 String name = diagnosticHandler.provider.relativizeUri(uri); | 88 String name = diagnosticHandler.provider.relativizeUri(uri); |
| 89 print('$name@$begin+${end - begin}: [$kind] $message}'); | 89 print('$name@$begin+${end - begin}: [$kind] $message}'); |
| 90 } | 90 } |
| 91 } | 91 } |
| 92 | 92 |
| 93 Future inputProvider(Uri uri) { | 93 Future inputProvider(Uri uri) { |
| 94 if (uri.scheme == "file") { | 94 if (uri.scheme == "file") { |
| 95 watcher.watchFile(uri); | 95 if (!'$uri'.startsWith('$libraryRoot')) { |
| 96 watcher.watchFile(uri); |
| 97 } |
| 96 } | 98 } |
| 97 return diagnosticHandler.provider(uri); | 99 return diagnosticHandler.provider(uri); |
| 98 } | 100 } |
| 99 | 101 |
| 100 while (true) { | 102 while (true) { |
| 101 Stopwatch sw = new Stopwatch()..start(); | 103 Stopwatch sw = new Stopwatch()..start(); |
| 102 IncrementalCompiler compiler = new IncrementalCompiler( | 104 IncrementalCompiler compiler = new IncrementalCompiler( |
| 103 libraryRoot: libraryRoot, | 105 libraryRoot: libraryRoot, |
| 104 packageRoot: packageRoot, | 106 packageRoot: packageRoot, |
| 105 inputProvider: inputProvider, | 107 inputProvider: inputProvider, |
| (...skipping 10 matching lines...) Expand all Loading... |
| 116 controller.add( | 118 controller.add( |
| 117 new CompilerEvent( | 119 new CompilerEvent( |
| 118 IncrementalKind.ERROR, compiler, outputProvider.output, sw)); | 120 IncrementalKind.ERROR, compiler, outputProvider.output, sw)); |
| 119 } | 121 } |
| 120 | 122 |
| 121 while (await watcher.hasChanges()) { | 123 while (await watcher.hasChanges()) { |
| 122 try { | 124 try { |
| 123 Map<Uri, Uri> changes = watcher.readChanges(); | 125 Map<Uri, Uri> changes = watcher.readChanges(); |
| 124 | 126 |
| 125 sw = new Stopwatch()..start(); | 127 sw = new Stopwatch()..start(); |
| 126 await compiler.compileUpdates(changes); | 128 String updates = await compiler.compileUpdates(changes); |
| 127 sw.stop(); | 129 sw.stop(); |
| 128 | 130 |
| 129 controller.add( | 131 controller.add( |
| 130 new CompilerEvent( | 132 new CompilerEvent( |
| 131 IncrementalKind.INCREMENTAL, compiler, outputProvider.output, | 133 IncrementalKind.INCREMENTAL, compiler, outputProvider.output, |
| 132 sw)); | 134 sw, updates: updates)); |
| 133 | 135 |
| 134 } on IncrementalCompilationFailed catch (error, trace) { | 136 } on IncrementalCompilationFailed catch (error, trace) { |
| 135 controller.addError(error, trace); | 137 controller.addError(error, trace); |
| 136 break; | 138 break; |
| 137 } | 139 } |
| 138 } | 140 } |
| 139 } | 141 } |
| 140 } | 142 } |
| 141 | 143 |
| 142 /// Output provider which collects output in [output]. | 144 /// Output provider which collects output in [output]. |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 185 | 187 |
| 186 class CompilerEvent { | 188 class CompilerEvent { |
| 187 final IncrementalKind kind; | 189 final IncrementalKind kind; |
| 188 | 190 |
| 189 final IncrementalCompiler compiler; | 191 final IncrementalCompiler compiler; |
| 190 | 192 |
| 191 final Map<String, String> _output; | 193 final Map<String, String> _output; |
| 192 | 194 |
| 193 final Stopwatch stopwatch; | 195 final Stopwatch stopwatch; |
| 194 | 196 |
| 195 CompilerEvent(this.kind, this.compiler, this._output, this.stopwatch); | 197 final String updates; |
| 198 |
| 199 CompilerEvent( |
| 200 this.kind, this.compiler, this._output, this.stopwatch, {this.updates}); |
| 196 | 201 |
| 197 String operator[](String key) => _output[key]; | 202 String operator[](String key) => _output[key]; |
| 198 } | 203 } |
| OLD | NEW |