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 library lib; |
| 6 |
| 7 @MirrorsUsed(targets: "lib") |
5 import 'dart:mirrors'; | 8 import 'dart:mirrors'; |
6 import 'dart:isolate'; | 9 import 'dart:isolate'; |
7 import 'package:expect/expect.dart'; | 10 import 'package:expect/expect.dart'; |
8 | 11 |
9 child(SendPort port) { | 12 child(SendPort port) { |
10 LibraryMirror root = currentMirrorSystem().isolate.rootLibrary; | 13 LibraryMirror root = currentMirrorSystem().isolate.rootLibrary; |
11 Expect.isNotNull(root); | 14 Expect.isNotNull(root); |
12 port.send(root.uri.toString()); | 15 port.send(root.uri.toString()); |
13 } | 16 } |
14 | 17 |
15 main() { | 18 main() { |
16 var port; | 19 var port; |
17 port = new RawReceivePort((String childRootUri) { | 20 port = new RawReceivePort((String childRootUri) { |
18 LibraryMirror root = currentMirrorSystem().isolate.rootLibrary; | 21 LibraryMirror root = currentMirrorSystem().isolate.rootLibrary; |
19 Expect.isNotNull(root); | 22 Expect.isNotNull(root); |
20 Expect.equals(root.uri.toString(), childRootUri); | 23 Expect.equals(root.uri.toString(), childRootUri); |
21 port.close(); | 24 port.close(); |
22 }); | 25 }); |
23 | 26 |
24 Isolate.spawn(child, port.sendPort); | 27 Isolate.spawn(child, port.sendPort); |
25 } | 28 } |
OLD | NEW |