| 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 polymer.src.utils_observe; |  | 
|   6  |  | 
|   7 /** |  | 
|   8  * Converts a string name with hyphens into an identifier, by removing hyphens |  | 
|   9  * and capitalizing the following letter. Optionally [startUppercase] to |  | 
|  10  * captialize the first letter. |  | 
|  11  */ |  | 
|  12 String toCamelCase(String hyphenedName, {bool startUppercase: false}) { |  | 
|  13   var segments = hyphenedName.split('-'); |  | 
|  14   int start = startUppercase ? 0 : 1; |  | 
|  15   for (int i = start; i < segments.length; i++) { |  | 
|  16     var segment = segments[i]; |  | 
|  17     if (segment.length > 0) { |  | 
|  18       // Character between 'a'..'z' mapped to 'A'..'Z' |  | 
|  19       segments[i] = '${segment[0].toUpperCase()}${segment.substring(1)}'; |  | 
|  20     } |  | 
|  21   } |  | 
|  22   return segments.join(''); |  | 
|  23 } |  | 
|  24  |  | 
|  25 String toHyphenedName(String word) { |  | 
|  26   var sb = new StringBuffer(); |  | 
|  27   for (int i = 0; i < word.length; i++) { |  | 
|  28     var lower = word[i].toLowerCase(); |  | 
|  29     if (word[i] != lower && i > 0) sb.write('-'); |  | 
|  30     sb.write(lower); |  | 
|  31   } |  | 
|  32   return sb.toString(); |  | 
|  33 } |  | 
| OLD | NEW |