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

Side by Side Diff: sdk/lib/_internal/compiler/implementation/mirrors/util.dart

Issue 15263004: Adding isNotEmpty property to collection and string. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fix template generation Created 7 years, 6 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
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 library util; 5 library util;
6 6
7 /** 7 /**
8 * An abstract map implementation. This class can be used as a superclass for 8 * An abstract map implementation. This class can be used as a superclass for
9 * implementing maps, requiring only the further implementation of the 9 * implementing maps, requiring only the further implementation of the
10 * [:operator []:], [:forEach:] and [:length:] methods to provide a fully 10 * [:operator []:], [:forEach:] and [:length:] methods to provide a fully
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 return keys; 51 return keys;
52 } 52 }
53 53
54 Iterable<V> get values { 54 Iterable<V> get values {
55 var values = <V>[]; 55 var values = <V>[];
56 forEach((_,v) => values.add(v)); 56 forEach((_,v) => values.add(v));
57 return values; 57 return values;
58 } 58 }
59 59
60 bool get isEmpty => length == 0; 60 bool get isEmpty => length == 0;
61 bool get isNotEmpty => !isEmpty;
61 V putIfAbsent(K key, V ifAbsent()) { 62 V putIfAbsent(K key, V ifAbsent()) {
62 if (!containsKey(key)) { 63 if (!containsKey(key)) {
63 V value = this[key]; 64 V value = this[key];
64 this[key] = ifAbsent(); 65 this[key] = ifAbsent();
65 return value; 66 return value;
66 } 67 }
67 return null; 68 return null;
68 } 69 }
69 70
70 V remove(K key) { 71 V remove(K key) {
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
164 165
165 void forEach(void f(K key, Vout value)) { 166 void forEach(void f(K key, Vout value)) {
166 _map.forEach((K k, Vin v) { 167 _map.forEach((K k, Vin v) {
167 var value = _filter(v); 168 var value = _filter(v);
168 if (value != null) { 169 if (value != null) {
169 f(k, value); 170 f(k, value);
170 } 171 }
171 }); 172 });
172 } 173 }
173 } 174 }
OLDNEW
« no previous file with comments | « sdk/lib/_internal/compiler/implementation/lib/js_string.dart ('k') | sdk/lib/collection/hash_map.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698