| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 barback.phase; | 5 library barback.graph.phase; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 | 8 |
| 9 import '../asset/asset_id.dart'; |
| 10 import '../asset/asset_node.dart'; |
| 11 import '../asset/asset_node_set.dart'; |
| 12 import '../errors.dart'; |
| 13 import '../log.dart'; |
| 14 import '../transformer/transformer.dart'; |
| 15 import '../transformer/transformer_group.dart'; |
| 16 import '../utils.dart'; |
| 17 import '../utils/multiset.dart'; |
| 9 import 'asset_cascade.dart'; | 18 import 'asset_cascade.dart'; |
| 10 import 'asset_id.dart'; | |
| 11 import 'asset_node.dart'; | |
| 12 import 'asset_node_set.dart'; | |
| 13 import 'errors.dart'; | |
| 14 import 'group_runner.dart'; | 19 import 'group_runner.dart'; |
| 15 import 'log.dart'; | |
| 16 import 'multiset.dart'; | |
| 17 import 'node_status.dart'; | 20 import 'node_status.dart'; |
| 18 import 'node_streams.dart'; | 21 import 'node_streams.dart'; |
| 19 import 'phase_forwarder.dart'; | 22 import 'phase_forwarder.dart'; |
| 20 import 'phase_output.dart'; | 23 import 'phase_output.dart'; |
| 21 import 'transformer.dart'; | |
| 22 import 'transformer_classifier.dart'; | 24 import 'transformer_classifier.dart'; |
| 23 import 'transformer_group.dart'; | |
| 24 import 'utils.dart'; | |
| 25 | 25 |
| 26 /// One phase in the ordered series of transformations in an [AssetCascade]. | 26 /// One phase in the ordered series of transformations in an [AssetCascade]. |
| 27 /// | 27 /// |
| 28 /// Each phase can access outputs from previous phases and can in turn pass | 28 /// Each phase can access outputs from previous phases and can in turn pass |
| 29 /// outputs to later phases. Phases are processed strictly serially. All | 29 /// outputs to later phases. Phases are processed strictly serially. All |
| 30 /// transforms in a phase will be complete before moving on to the next phase. | 30 /// transforms in a phase will be complete before moving on to the next phase. |
| 31 /// Within a single phase, all transforms will be run in parallel. | 31 /// Within a single phase, all transforms will be run in parallel. |
| 32 /// | 32 /// |
| 33 /// Building can be interrupted between phases. For example, a source is added | 33 /// Building can be interrupted between phases. For example, a source is added |
| 34 /// which starts the background process. Sometime during, say, phase 2 (which | 34 /// which starts the background process. Sometime during, say, phase 2 (which |
| (...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 375 assert(asset.state.isDirty); | 375 assert(asset.state.isDirty); |
| 376 asset.force(); | 376 asset.force(); |
| 377 asset.whenStateChanges().then((state) { | 377 asset.whenStateChanges().then((state) { |
| 378 if (state.isRemoved) return getOutput(asset.id); | 378 if (state.isRemoved) return getOutput(asset.id); |
| 379 return asset; | 379 return asset; |
| 380 }).then(request.complete).catchError(request.completeError); | 380 }).then(request.complete).catchError(request.completeError); |
| 381 } | 381 } |
| 382 | 382 |
| 383 String toString() => "phase $_location.$_index"; | 383 String toString() => "phase $_location.$_index"; |
| 384 } | 384 } |
| OLD | NEW |