Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(910)

Side by Side Diff: pkg/barback/lib/src/transformer/declaring_aggregate_transformer.dart

Issue 262173009: Add aggregate transformer types to barback. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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.transformer.declaring_transformer; 5 library barback.transformer.declaring_aggregate_transformer;
6
7 import 'dart:async';
8
9 import 'declaring_transform.dart';
10 6
11 /// An interface for [Transformer]s that can cheaply figure out which assets 7 /// An interface for [Transformer]s that can cheaply figure out which assets
12 /// they'll emit without doing the work of actually creating those assets. 8 /// they'll emit without doing the work of actually creating those assets.
13 /// 9 ///
14 /// If a transformer implements this interface, that allows barback to perform 10 /// If a transformer implements this interface, that allows barback to perform
15 /// optimizations to make the asset graph work more smoothly. 11 /// optimizations to make the asset graph work more smoothly.
16 abstract class DeclaringTransformer { 12 abstract class DeclaringAggregateTransformer {
17 /// Declare which assets would be emitted for the primary input id specified 13 /// Declare which assets would be emitted for the primary input ids specified
18 /// by [transform]. 14 /// by [transform].
19 /// 15 ///
20 /// This works a little like [Transformer.apply], with two main differences. 16 /// This works a little like [AggregateTransformer.apply], with two main
21 /// First, instead of having access to the primary input's contents, it only 17 /// differences. First, instead of having access to the primary inputs'
22 /// has access to its id. Second, instead of emitting [Asset]s, it just emits 18 /// contents, it only has access to their ids. Second, instead of emitting
23 /// [AssetId]s through [transform.addOutputId]. 19 /// [Asset]s, it just emits [AssetId]s through [transform.addOutputId].
24 /// 20 ///
25 /// If this does asynchronous work, it should return a [Future] that completes 21 /// If this does asynchronous work, it should return a [Future] that completes
26 /// once it's finished. 22 /// once it's finished.
27 declareOutputs(DeclaringTransform transform); 23 declareOutputs(DeclaringAggregateTransform transform);
28 } 24 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698