| Index: dart/frog/leg/lib/js_helper.dart
|
| diff --git a/dart/frog/leg/lib/js_helper.dart b/dart/frog/leg/lib/js_helper.dart
|
| index 5ba9b5df2b516fab0a780a18eaebb717d50f3b15..6c534e90f663c6203e24d558ce69cb792792849d 100644
|
| --- a/dart/frog/leg/lib/js_helper.dart
|
| +++ b/dart/frog/leg/lib/js_helper.dart
|
| @@ -278,11 +278,9 @@ builtin$removeLast$0(var receiver) {
|
|
|
| builtin$filter$1(var receiver, var predicate) {
|
| checkNull(receiver);
|
| - if (isJsArray(receiver)) {
|
| - return JS('Object', @'$0.filter(function(v) { return $1(v) === true; })',
|
| - receiver, predicate);
|
| - }
|
| - return UNINTERCEPTED(receiver.filter(predicate));
|
| + if (!isJsArray(receiver)) return UNINTERCEPTED(receiver.filter(predicate));
|
| +
|
| + return Collections.filter(receiver, [], predicate);
|
| }
|
|
|
|
|
| @@ -809,6 +807,12 @@ builtin$some$1(receiver, f) {
|
| return Collections.some(receiver, f);
|
| }
|
|
|
| +builtin$every$1(receiver, f) {
|
| + if (!isJsArray(receiver)) return UNINTERCEPTED(receiver.every(f));
|
| +
|
| + return Collections.every(receiver, f);
|
| +}
|
| +
|
| builtin$sort$1(receiver, compare) {
|
| checkNull(receiver);
|
| if (!isJsArray(receiver)) return UNINTERCEPTED(receiver.sort(compare));
|
|
|