| Index: sdk/lib/svg/dart2js/svg_dart2js.dart
|
| diff --git a/sdk/lib/svg/dart2js/svg_dart2js.dart b/sdk/lib/svg/dart2js/svg_dart2js.dart
|
| index a35aa0eb37d08cab72c2f8df281b9d03e053c079..edb1e3a4240ec503cf81a5ac018adb7a58dc102b 100644
|
| --- a/sdk/lib/svg/dart2js/svg_dart2js.dart
|
| +++ b/sdk/lib/svg/dart2js/svg_dart2js.dart
|
| @@ -3227,8 +3227,13 @@ class LengthList implements JavaScriptIndexingBehavior, List<Length> native "*SV
|
| throw new UnsupportedError("Cannot insertRange on immutable List.");
|
| }
|
|
|
| + List<Length> sublist(int start, [int end]) {
|
| + if (end == null) end = length;
|
| + return Lists.getRange(this, start, end, <Length>[]);
|
| + }
|
| +
|
| List<Length> getRange(int start, int rangeLength) =>
|
| - Lists.getRange(this, start, rangeLength, <Length>[]);
|
| + sublist(start, start + rangeLength);
|
|
|
| Map<int, Length> asMap() =>
|
| IterableMixinWorkaround.asMapList(this);
|
| @@ -3856,8 +3861,13 @@ class NumberList implements JavaScriptIndexingBehavior, List<Number> native "*SV
|
| throw new UnsupportedError("Cannot insertRange on immutable List.");
|
| }
|
|
|
| + List<Number> sublist(int start, [int end]) {
|
| + if (end == null) end = length;
|
| + return Lists.getRange(this, start, end, <Number>[]);
|
| + }
|
| +
|
| List<Number> getRange(int start, int rangeLength) =>
|
| - Lists.getRange(this, start, rangeLength, <Number>[]);
|
| + sublist(start, start + rangeLength);
|
|
|
| Map<int, Number> asMap() =>
|
| IterableMixinWorkaround.asMapList(this);
|
| @@ -4761,8 +4771,13 @@ class PathSegList implements JavaScriptIndexingBehavior, List<PathSeg> native "*
|
| throw new UnsupportedError("Cannot insertRange on immutable List.");
|
| }
|
|
|
| + List<PathSeg> sublist(int start, [int end]) {
|
| + if (end == null) end = length;
|
| + return Lists.getRange(this, start, end, <PathSeg>[]);
|
| + }
|
| +
|
| List<PathSeg> getRange(int start, int rangeLength) =>
|
| - Lists.getRange(this, start, rangeLength, <PathSeg>[]);
|
| + sublist(start, start + rangeLength);
|
|
|
| Map<int, PathSeg> asMap() =>
|
| IterableMixinWorkaround.asMapList(this);
|
| @@ -5651,8 +5666,13 @@ class StringList implements JavaScriptIndexingBehavior, List<String> native "*SV
|
| throw new UnsupportedError("Cannot insertRange on immutable List.");
|
| }
|
|
|
| + List<String> sublist(int start, [int end]) {
|
| + if (end == null) end = length;
|
| + return Lists.getRange(this, start, end, <String>[]);
|
| + }
|
| +
|
| List<String> getRange(int start, int rangeLength) =>
|
| - Lists.getRange(this, start, rangeLength, <String>[]);
|
| + sublist(start, start + rangeLength);
|
|
|
| Map<int, String> asMap() =>
|
| IterableMixinWorkaround.asMapList(this);
|
| @@ -6818,8 +6838,13 @@ class TransformList implements List<Transform>, JavaScriptIndexingBehavior nativ
|
| throw new UnsupportedError("Cannot insertRange on immutable List.");
|
| }
|
|
|
| + List<Transform> sublist(int start, [int end]) {
|
| + if (end == null) end = length;
|
| + return Lists.getRange(this, start, end, <Transform>[]);
|
| + }
|
| +
|
| List<Transform> getRange(int start, int rangeLength) =>
|
| - Lists.getRange(this, start, rangeLength, <Transform>[]);
|
| + sublist(start, start + rangeLength);
|
|
|
| Map<int, Transform> asMap() =>
|
| IterableMixinWorkaround.asMapList(this);
|
| @@ -7342,8 +7367,13 @@ class _ElementInstanceList implements JavaScriptIndexingBehavior, List<ElementIn
|
| throw new UnsupportedError("Cannot insertRange on immutable List.");
|
| }
|
|
|
| + List<ElementInstance> sublist(int start, [int end]) {
|
| + if (end == null) end = length;
|
| + return Lists.getRange(this, start, end, <ElementInstance>[]);
|
| + }
|
| +
|
| List<ElementInstance> getRange(int start, int rangeLength) =>
|
| - Lists.getRange(this, start, rangeLength, <ElementInstance>[]);
|
| + sublist(start, start + rangeLength);
|
|
|
| Map<int, ElementInstance> asMap() =>
|
| IterableMixinWorkaround.asMapList(this);
|
|
|