| OLD | NEW | 
|---|
| 1 // Copyright (c) 2011, the Dart project authors.  Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 part of common; | 5 part of common; | 
| 6 | 6 | 
| 7 // Misc benchmark-related utility functions. | 7 // Misc benchmark-related utility functions. | 
| 8 | 8 | 
| 9 class BenchUtil { | 9 class BenchUtil { | 
| 10   static int get now { | 10   static int get now { | 
| (...skipping 21 matching lines...) Expand all  Loading... | 
| 32 | 32 | 
| 33   static String formatGolemData(String prefix, Map<String, num> results) { | 33   static String formatGolemData(String prefix, Map<String, num> results) { | 
| 34     List<String> elements = new List<String>(); | 34     List<String> elements = new List<String>(); | 
| 35     results.forEach((String name, num score) { | 35     results.forEach((String name, num score) { | 
| 36       elements.add('"${prefix}/${name}":${score}'); | 36       elements.add('"${prefix}/${name}":${score}'); | 
| 37     }); | 37     }); | 
| 38     return serialize(elements); | 38     return serialize(elements); | 
| 39   } | 39   } | 
| 40 | 40 | 
| 41   static bool _inRange(int charCode, String start, String end) { | 41   static bool _inRange(int charCode, String start, String end) { | 
| 42     return start.charCodeAt(0) <= charCode && charCode <= end.charCodeAt(0); | 42     return start.codeUnitAt(0) <= charCode && charCode <= end.codeUnitAt(0); | 
| 43   } | 43   } | 
| 44 | 44 | 
| 45   static const String DIGITS = '0123456789ABCDEF'; | 45   static const String DIGITS = '0123456789ABCDEF'; | 
| 46   static String _asDigit(int value) { | 46   static String _asDigit(int value) { | 
| 47     return DIGITS[value]; | 47     return DIGITS[value]; | 
| 48   } | 48   } | 
| 49 | 49 | 
| 50   static String encodeUri(final String s) { | 50   static String encodeUri(final String s) { | 
| 51     StringBuffer sb = new StringBuffer(); | 51     StringBuffer sb = new StringBuffer(); | 
| 52     for (int i = 0; i < s.length; i++) { | 52     for (int i = 0; i < s.length; i++) { | 
| 53       final int charCode = s.charCodeAt(i); | 53       final int charCode = s.codeUnitAt(i); | 
| 54       final bool noEscape = | 54       final bool noEscape = | 
| 55           _inRange(charCode, '0', '9') || | 55           _inRange(charCode, '0', '9') || | 
| 56           _inRange(charCode, 'a', 'z') || | 56           _inRange(charCode, 'a', 'z') || | 
| 57           _inRange(charCode, 'A', 'Z'); | 57           _inRange(charCode, 'A', 'Z'); | 
| 58       if (noEscape) { | 58       if (noEscape) { | 
| 59         sb.add(s[i]); | 59         sb.add(s[i]); | 
| 60       } else { | 60       } else { | 
| 61        sb.add('%'); | 61        sb.add('%'); | 
| 62        sb.add(_asDigit((charCode >> 4) & 0xF)); | 62        sb.add(_asDigit((charCode >> 4) & 0xF)); | 
| 63        sb.add(_asDigit(charCode & 0xF)); | 63        sb.add(_asDigit(charCode & 0xF)); | 
| (...skipping 11 matching lines...) Expand all  Loading... | 
| 75     for (Match match in new RegExp(pattern).allMatches(s)) { | 75     for (Match match in new RegExp(pattern).allMatches(s)) { | 
| 76       sb.add(s.substring(pos, match.start)); | 76       sb.add(s.substring(pos, match.start)); | 
| 77       sb.add(replacement(match)); | 77       sb.add(replacement(match)); | 
| 78       pos = match.end; | 78       pos = match.end; | 
| 79     } | 79     } | 
| 80     sb.add(s.substring(pos)); | 80     sb.add(s.substring(pos)); | 
| 81 | 81 | 
| 82     return sb.toString(); | 82     return sb.toString(); | 
| 83   } | 83   } | 
| 84 } | 84 } | 
| OLD | NEW | 
|---|