Chromium Code Reviews| Index: pkg/barback/lib/src/transformer_cluster.dart |
| diff --git a/pkg/barback/lib/src/transformer_cluster.dart b/pkg/barback/lib/src/transformer_cluster.dart |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..becb5600f2db43eee46776346617fff2d7883f48 |
| --- /dev/null |
| +++ b/pkg/barback/lib/src/transformer_cluster.dart |
| @@ -0,0 +1,30 @@ |
| +// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| +// 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. |
| + |
| +library barback.transformer_cluster; |
| + |
| +import 'dart:async'; |
| + |
| +import 'operator.dart'; |
| + |
| +/// A [TransformerCluster] encapsulates a phased collection of transformers. |
| +/// |
| +/// A transformer cluster is defined like a collection of phases, such as you |
| +/// might pass to [Barback.updateOperators]. Input assets are transformed by the |
| +/// first phase, whose results are passed to the second phase, and so on. |
| +/// |
| +/// However, from the perspective of someone using a [TransformerCluster], it |
| +/// works just like a [Transformer]. It can be included in phases, and will run |
| +/// in parallel to other transformers or clusters in those phases. Other |
| +/// transformers and clusters will be unable to see any intermediate assets that |
| +/// are generated by one phase of the cluster and consumed by another. Phases |
| +/// following that containing the cluster will be able to see its outputs, |
|
Bob Nystrom
2013/10/04 21:47:50
"Phases following that" -> "Phases after the one".
nweiz
2013/10/07 23:21:31
Done.
|
| +/// though. |
| +class TransformerCluster implements Operator { |
|
Bob Nystrom
2013/10/04 21:47:50
As per our discussion: "TransformerGroup".
nweiz
2013/10/07 23:21:31
Done.
|
| + /// The phases that comprise this cluster. |
| + final Iterable<Iterable<Operator>> phases; |
| + |
| + TransformerCluster(Iterable<Iterable<Operator>> phases) |
| + : this.phases = phases.map((phase) => phase.toList()).toList(); |
| +} |