| OLD | NEW | 
|---|
|  | (Empty) | 
| 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 |  | 
| 3 // BSD-style license that can be found in the LICENSE file. |  | 
| 4 |  | 
| 5 library barback.barback_settings; |  | 
| 6 |  | 
| 7 /// A generic settings object for providing configuration details to |  | 
| 8 /// [Transformer]s. |  | 
| 9 /// |  | 
| 10 /// Barback does not specify *how* this is provided to transformers. It is up |  | 
| 11 /// to a host application to handle this. (For example, pub passes this to the |  | 
| 12 /// transformer's constructor.) |  | 
| 13 class BarbackSettings { |  | 
| 14   /// An open-ended map of configuration properties specific to this |  | 
| 15   /// transformer. |  | 
| 16   /// |  | 
| 17   /// The contents of the map should be serializable across isolates, but |  | 
| 18   /// otherwise can contain whatever you want. |  | 
| 19   final Map configuration; |  | 
| 20 |  | 
| 21   /// The mode that user is running Barback in. |  | 
| 22   /// |  | 
| 23   /// This will be the same for all transformers in a running instance of |  | 
| 24   /// Barback. |  | 
| 25   final BarbackMode mode; |  | 
| 26 |  | 
| 27   BarbackSettings(this.configuration, this.mode); |  | 
| 28 } |  | 
| 29 |  | 
| 30 /// Enum-like class for specifying a mode that transformers may be run in. |  | 
| 31 /// |  | 
| 32 /// Note that this is not a *closed* set of enum values. Host applications may |  | 
| 33 /// define their own values for this, so a transformer relying on it should |  | 
| 34 /// ensure that it behaves sanely with unknown values. |  | 
| 35 class BarbackMode { |  | 
| 36   /// The normal mode used during development. |  | 
| 37   static const DEBUG = const BarbackMode._("debug"); |  | 
| 38 |  | 
| 39   /// The normal mode used to build an application for deploying to production. |  | 
| 40   static const RELEASE = const BarbackMode._("release"); |  | 
| 41 |  | 
| 42   /// The name of the mode. |  | 
| 43   /// |  | 
| 44   /// By convention, this is a lowercase string. |  | 
| 45   final String name; |  | 
| 46 |  | 
| 47   /// Create a mode named [name]. |  | 
| 48   factory BarbackMode(String name) { |  | 
| 49     // Use canonical instances of known names. |  | 
| 50     switch (name) { |  | 
| 51       case "debug": return BarbackMode.DEBUG; |  | 
| 52       case "release": return BarbackMode.RELEASE; |  | 
| 53       default: |  | 
| 54         return new BarbackMode._(name); |  | 
| 55     } |  | 
| 56   } |  | 
| 57 |  | 
| 58   const BarbackMode._(this.name); |  | 
| 59 |  | 
| 60   String toString() => name; |  | 
| 61 } |  | 
| OLD | NEW | 
|---|