| Index: compiler/lib/implementation/collections.dart
|
| diff --git a/compiler/lib/implementation/collections.dart b/compiler/lib/implementation/collections.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..33b41d8799012aefa4a60bacd9c5a62190c22203
|
| --- /dev/null
|
| +++ b/compiler/lib/implementation/collections.dart
|
| @@ -0,0 +1,57 @@
|
| +// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
|
| +// for details. All rights reserved. Use of this source code is governed by a
|
| +// BSD-style license that can be found in the LICENSE file.
|
| +
|
| +/**
|
| + * The [Collections] class implements static methods useful when
|
| + * writing a class that implements [Collection] and the [iterator]
|
| + * method.
|
| + */
|
| +class Collections {
|
| + static void forEach(Iterable<Object> iterable, void f(Object o)) {
|
| + for (final e in iterable) {
|
| + f(e);
|
| + }
|
| + }
|
| +
|
| + static List map(Iterable<Object> source,
|
| + List<Object> destination,
|
| + f(o)) {
|
| + for (final e in source) {
|
| + destination.add(f(e));
|
| + }
|
| + return destination;
|
| + }
|
| +
|
| + static bool some(Iterable<Object> iterable, bool f(Object o)) {
|
| + for (final e in iterable) {
|
| + if (f(e)) return true;
|
| + }
|
| + return false;
|
| + }
|
| +
|
| + static bool every(Iterable<Object> iterable, bool f(Object o)) {
|
| + for (final e in iterable) {
|
| + if (!f(e)) return false;
|
| + }
|
| + return true;
|
| + }
|
| +
|
| + static List filter(Iterable<Object> source,
|
| + List<Object> destination,
|
| + bool f(o)) {
|
| + for (final e in source) {
|
| + if (f(e)) destination.add(e);
|
| + }
|
| + return destination;
|
| + }
|
| +
|
| + static bool isEmpty(Iterable<Object> iterable) {
|
| + return !iterable.iterator().hasNext();
|
| + }
|
| +
|
| + static String collectionToString(Collection c) => c.toString();
|
| +
|
| + static void _emitObject(Object o, StringBuffer result, List visiting) {
|
| + }
|
| +}
|
|
|