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

Unified Diff: sdk/lib/html/templates/html/impl/impl_Element.darttemplate

Issue 11412086: Make 'where' lazy. (Closed) Base URL: https://dart.googlecode.com/svn/experimental/lib_v2/dart
Patch Set: FilteredIterable/Iterator -> WhereIterable/Iterator. Created 8 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: sdk/lib/html/templates/html/impl/impl_Element.darttemplate
diff --git a/sdk/lib/html/templates/html/impl/impl_Element.darttemplate b/sdk/lib/html/templates/html/impl/impl_Element.darttemplate
index 27bdd8672ace146d6706e3c41575ab05a765c55e..bfa12e3c8acdb4943fc188b801301d0fb12fb6a8 100644
--- a/sdk/lib/html/templates/html/impl/impl_Element.darttemplate
+++ b/sdk/lib/html/templates/html/impl/impl_Element.darttemplate
@@ -31,15 +31,8 @@ class _ChildrenElementList implements List {
}
}
- List<Element> where(bool f(Element element)) {
- final output = [];
- forEach((Element element) {
- if (f(element)) {
- output.add(element);
- }
- });
- return new _FrozenElementList._wrap(output);
- }
+ Iterable<Element> where(bool f(Element element))
+ => new WhereIterable<Element>(this, f);
bool every(bool f(Element element)) {
for (Element element in this) {
@@ -176,13 +169,8 @@ class _FrozenElementList implements List {
return new MappedIterable<Element, dynamic>(this, f);
}
- List<Element> where(bool f(Element element)) {
- final out = [];
- for (Element el in this) {
- if (f(el)) out.add(el);
- }
- return out;
- }
+ Iterable<Element> where(bool f(Element element))
+ => new WhereIterable<Element>(this, f);
bool every(bool f(Element element)) {
for(Element element in this) {

Powered by Google App Engine
This is Rietveld 408576698