Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: compiler/lib/implementation/collections.dart

Issue 9114021: Added method map to Collection interface and all its implementations (except classes generated fr... (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: '' Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « compiler/lib/implementation/array.dart ('k') | compiler/lib/implementation/regexp.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /** 5 /**
6 * The [Collections] class implements static methods useful when 6 * The [Collections] class implements static methods useful when
7 * writing a class that implements [Collection] and the [iterator] 7 * writing a class that implements [Collection] and the [iterator]
8 * method. 8 * method.
9 */ 9 */
10 class Collections { 10 class Collections {
11 static void forEach(Iterable<Object> iterable, void f(Object o)) { 11 static void forEach(Iterable<Object> iterable, void f(Object o)) {
12 for (final e in iterable) { 12 for (final e in iterable) {
13 f(e); 13 f(e);
14 } 14 }
15 } 15 }
16 16
17 static List map(Iterable<Object> source,
18 List<Object> destination,
19 f(o)) {
20 for (final e in source) {
21 destination.add(f(e));
22 }
23 return destination;
24 }
25
17 static bool some(Iterable<Object> iterable, bool f(Object o)) { 26 static bool some(Iterable<Object> iterable, bool f(Object o)) {
18 for (final e in iterable) { 27 for (final e in iterable) {
19 if (f(e)) return true; 28 if (f(e)) return true;
20 } 29 }
21 return false; 30 return false;
22 } 31 }
23 32
24 static bool every(Iterable<Object> iterable, bool f(Object o)) { 33 static bool every(Iterable<Object> iterable, bool f(Object o)) {
25 for (final e in iterable) { 34 for (final e in iterable) {
26 if (!f(e)) return false; 35 if (!f(e)) return false;
27 } 36 }
28 return true; 37 return true;
29 } 38 }
30 39
31 static List filter(Iterable<Object> source, 40 static List filter(Iterable<Object> source,
32 List<Object> destination, 41 List<Object> destination,
33 bool f(o)) { 42 bool f(o)) {
34 for (final e in source) { 43 for (final e in source) {
35 if (f(e)) destination.add(e); 44 if (f(e)) destination.add(e);
36 } 45 }
37 return destination; 46 return destination;
38 } 47 }
39 48
40 static bool isEmpty(Iterable<Object> iterable) { 49 static bool isEmpty(Iterable<Object> iterable) {
41 return !iterable.iterator().hasNext(); 50 return !iterable.iterator().hasNext();
42 } 51 }
43 } 52 }
OLDNEW
« no previous file with comments | « compiler/lib/implementation/array.dart ('k') | compiler/lib/implementation/regexp.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698