| 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.md file. | 3 // BSD-style license that can be found in the LICENSE.md file. |
| 4 | 4 |
| 5 // TODO(ahe): Copied from closure_conversion branch of kernel, remove this file | 5 // TODO(ahe): Copied from closure_conversion branch of kernel, remove this file |
| 6 // when closure_conversion is merged with master. | 6 // when closure_conversion is merged with master. |
| 7 | 7 |
| 8 library kernel.testing.kernel_chain; | 8 library kernel.testing.kernel_chain; |
| 9 | 9 |
| 10 import 'dart:async' show Future; | 10 import 'dart:async' show Future; |
| (...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 253 const WriteDill(); | 253 const WriteDill(); |
| 254 | 254 |
| 255 String get name => "write .dill"; | 255 String get name => "write .dill"; |
| 256 | 256 |
| 257 Future<Result<Uri>> run(Program program, _) async { | 257 Future<Result<Uri>> run(Program program, _) async { |
| 258 Directory tmp = await Directory.systemTemp.createTemp(); | 258 Directory tmp = await Directory.systemTemp.createTemp(); |
| 259 Uri uri = tmp.uri.resolve("generated.dill"); | 259 Uri uri = tmp.uri.resolve("generated.dill"); |
| 260 File generated = new File.fromUri(uri); | 260 File generated = new File.fromUri(uri); |
| 261 IOSink sink = generated.openWrite(); | 261 IOSink sink = generated.openWrite(); |
| 262 try { | 262 try { |
| 263 new BinaryPrinter(sink).writeProgramFile(program); | 263 try { |
| 264 program.unbindCanonicalNames(); | 264 new BinaryPrinter(sink).writeProgramFile(program); |
| 265 } finally { |
| 266 program.unbindCanonicalNames(); |
| 267 } |
| 265 } catch (e, s) { | 268 } catch (e, s) { |
| 266 return fail(uri, e, s); | 269 return fail(uri, e, s); |
| 267 } finally { | 270 } finally { |
| 268 print("Wrote `${generated.path}`"); | 271 print("Wrote `${generated.path}`"); |
| 269 await sink.close(); | 272 await sink.close(); |
| 270 } | 273 } |
| 271 return pass(uri); | 274 return pass(uri); |
| 272 } | 275 } |
| 273 } | 276 } |
| 274 | 277 |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 358 | 361 |
| 359 Future openWrite(Uri uri, f(IOSink sink)) async { | 362 Future openWrite(Uri uri, f(IOSink sink)) async { |
| 360 IOSink sink = new File.fromUri(uri).openWrite(); | 363 IOSink sink = new File.fromUri(uri).openWrite(); |
| 361 try { | 364 try { |
| 362 await f(sink); | 365 await f(sink); |
| 363 } finally { | 366 } finally { |
| 364 await sink.close(); | 367 await sink.close(); |
| 365 } | 368 } |
| 366 print("Wrote $uri"); | 369 print("Wrote $uri"); |
| 367 } | 370 } |
| OLD | NEW |