Chromium Code Reviews| Index: sdk/lib/_internal/lib/js_array.dart |
| diff --git a/sdk/lib/_internal/lib/js_array.dart b/sdk/lib/_internal/lib/js_array.dart |
| index 36685a4be65a7c3bc8f65822d1d1ad33ad6be298..0e068c2013992d22ab5d896897379f42ab949562 100644 |
| --- a/sdk/lib/_internal/lib/js_array.dart |
| +++ b/sdk/lib/_internal/lib/js_array.dart |
| @@ -11,6 +11,9 @@ part of _interceptors; |
| * argument added to each member. |
| */ |
| class JSArray<E> extends Interceptor implements List<E>, JSIndexable { |
| + |
| + static List _toStringList = new List(); |
| + |
| const JSArray(); |
| checkMutable(reason) { |
| @@ -261,8 +264,17 @@ class JSArray<E> extends Interceptor implements List<E>, JSIndexable { |
| bool get isNotEmpty => !isEmpty; |
| - String toString() => ToString.iterableToString(this); |
| - |
| + String toString() { |
|
floitsch
2013/07/08 12:00:50
change to IterableMixinWorkaround.toStringList(thi
zarah
2013/07/08 14:35:15
Done.
|
| + for(int i = 0; i < _toStringList.length; i++) { |
| + if(identical(_toStringList[i], this)) |
| + return '[...]'; |
| + } |
| + _toStringList.add(this); |
| + String result = IterableMixinWorkaround.toStringList(this); |
| + _toStringList.remove(this); |
| + return result; |
| + } |
| + |
| List<E> toList({ bool growable: true }) => |
| new List<E>.from(this, growable: growable); |