| Index: runtime/lib/string_patch.dart
|
| ===================================================================
|
| --- runtime/lib/string_patch.dart (revision 23830)
|
| +++ runtime/lib/string_patch.dart (working copy)
|
| @@ -467,75 +467,6 @@
|
|
|
| String toLowerCase() native "String_toLowerCase";
|
|
|
| - // Implementations of Strings methods follow below.
|
| - static String join(Iterable<String> strings, String separator) {
|
| - bool first = true;
|
| - List<String> stringsList = <String>[];
|
| - for (String string in strings) {
|
| - if (first) {
|
| - first = false;
|
| - } else {
|
| - stringsList.add(separator);
|
| - }
|
| -
|
| - if (string is! String) {
|
| - throw new ArgumentError(Error.safeToString(string));
|
| - }
|
| - stringsList.add(string);
|
| - }
|
| - return concatAll(stringsList);
|
| - }
|
| -
|
| - static String concatAll(Iterable<String> strings) {
|
| - _ObjectArray stringsArray;
|
| - final len = strings.length;
|
| - bool isOneByteString = true;
|
| - int totalLength = 0;
|
| - if (strings._cid == _ObjectArray._clCId) {
|
| - stringsArray = strings;
|
| - for (int i = 0; i < len; i++) {
|
| - var string = strings[i];
|
| - if (string._cid == _OneByteString._classId) {
|
| - totalLength += string.length;
|
| - } else {
|
| - isOneByteString = false;
|
| - if (string is! String) throw new ArgumentError(string);
|
| - }
|
| - }
|
| - } else {
|
| - // Copy into an _ObjectArray.
|
| - stringsArray = new _ObjectArray(len);
|
| - int i = 0;
|
| - for (int i = 0; i < len; i++) {
|
| - var string = strings[i];
|
| - if (string._cid == _OneByteString.clCid) {
|
| - totalLength += s.length;
|
| - } else {
|
| - isOneByteString = false;
|
| - if (string is! String) throw new ArgumentError(string);
|
| - }
|
| - stringsArray[i++] = string;
|
| - }
|
| - }
|
| - if (isOneByteString) {
|
| - return _OneByteString._concatAll(stringsArray, totalLength);
|
| - }
|
| - return _concatAllNative(stringsArray);
|
| - }
|
| -
|
| - static String _concatAll(_ObjectArray<String> strings) {
|
| - int totalLength = 0;
|
| - final stringsLength = strings.length;
|
| - for (int i = 0; i < stringsLength; i++) {
|
| - var e = strings[i];
|
| - if (e._cid != _OneByteString._classId) {
|
| - return _concatAllNative(strings);
|
| - }
|
| - totalLength += e.length;
|
| - }
|
| - return _OneByteString._concatAll(strings, totalLength);
|
| - }
|
| -
|
| // Call this method if not all list elements are OneByteString-s.
|
| static String _concatAllNative(_ObjectArray<String> strings)
|
| native "Strings_concatAll";
|
|
|