Skip to content
This repository was archived by the owner on Jul 4, 2023. It is now read-only.

Commit 63e9a0e

Browse files
cpovirkcgdecker
authored andcommitted
Use TransformedIterator instead of ForwardingIterator.
------------- Created by MOE: http://code.google.com/p/moe-java MOE_MIGRATED_REVID=79673799
1 parent b98c1f9 commit 63e9a0e

File tree

3 files changed

+25
-46
lines changed

3 files changed

+25
-46
lines changed

guava-gwt/src-super/com/google/common/collect/super/com/google/common/collect/Synchronized.java

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -827,16 +827,13 @@ private static class SynchronizedAsMapEntries<K, V>
827827
super(delegate, mutex);
828828
}
829829

830-
@Override public Iterator<Map.Entry<K, Collection<V>>> iterator() {
830+
@Override
831+
public Iterator<Map.Entry<K, Collection<V>>> iterator() {
831832
// Must be manually synchronized.
832-
final Iterator<Map.Entry<K, Collection<V>>> iterator = super.iterator();
833-
return new ForwardingIterator<Map.Entry<K, Collection<V>>>() {
834-
@Override protected Iterator<Map.Entry<K, Collection<V>>> delegate() {
835-
return iterator;
836-
}
837-
838-
@Override public Map.Entry<K, Collection<V>> next() {
839-
final Map.Entry<K, Collection<V>> entry = super.next();
833+
return new TransformedIterator<Map.Entry<K, Collection<V>>, Map.Entry<K, Collection<V>>>(
834+
super.iterator()) {
835+
@Override
836+
Map.Entry<K, Collection<V>> transform(final Map.Entry<K, Collection<V>> entry) {
840837
return new ForwardingMapEntry<K, Collection<V>>() {
841838
@Override protected Map.Entry<K, Collection<V>> delegate() {
842839
return entry;
@@ -1191,13 +1188,9 @@ private static class SynchronizedAsMapValues<V>
11911188

11921189
@Override public Iterator<Collection<V>> iterator() {
11931190
// Must be manually synchronized.
1194-
final Iterator<Collection<V>> iterator = super.iterator();
1195-
return new ForwardingIterator<Collection<V>>() {
1196-
@Override protected Iterator<Collection<V>> delegate() {
1197-
return iterator;
1198-
}
1199-
@Override public Collection<V> next() {
1200-
return typePreservingCollection(super.next(), mutex);
1191+
return new TransformedIterator<Collection<V>, Collection<V>>(super.iterator()) {
1192+
@Override Collection<V> transform(Collection<V> from) {
1193+
return typePreservingCollection(from, mutex);
12011194
}
12021195
};
12031196
}

guava/src/com/google/common/collect/MapConstraints.java

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -580,13 +580,9 @@ private static class ConstrainedEntries<K, V>
580580
}
581581

582582
@Override public Iterator<Entry<K, V>> iterator() {
583-
final Iterator<Entry<K, V>> iterator = entries.iterator();
584-
return new ForwardingIterator<Entry<K, V>>() {
585-
@Override public Entry<K, V> next() {
586-
return constrainedEntry(iterator.next(), constraint);
587-
}
588-
@Override protected Iterator<Entry<K, V>> delegate() {
589-
return iterator;
583+
return new TransformedIterator<Entry<K, V>, Entry<K, V>>(entries.iterator()) {
584+
@Override Entry<K, V> transform(Entry<K, V> from) {
585+
return constrainedEntry(from, constraint);
590586
}
591587
};
592588
}
@@ -652,13 +648,10 @@ static class ConstrainedAsMapEntries<K, V>
652648
}
653649

654650
@Override public Iterator<Entry<K, Collection<V>>> iterator() {
655-
final Iterator<Entry<K, Collection<V>>> iterator = entries.iterator();
656-
return new ForwardingIterator<Entry<K, Collection<V>>>() {
657-
@Override public Entry<K, Collection<V>> next() {
658-
return constrainedAsMapEntry(iterator.next(), constraint);
659-
}
660-
@Override protected Iterator<Entry<K, Collection<V>>> delegate() {
661-
return iterator;
651+
return new TransformedIterator<Entry<K, Collection<V>>, Entry<K, Collection<V>>>(
652+
entries.iterator()) {
653+
@Override Entry<K, Collection<V>> transform(Entry<K, Collection<V>> from) {
654+
return constrainedAsMapEntry(from, constraint);
662655
}
663656
};
664657
}

guava/src/com/google/common/collect/Synchronized.java

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -843,16 +843,13 @@ private static class SynchronizedAsMapEntries<K, V>
843843
super(delegate, mutex);
844844
}
845845

846-
@Override public Iterator<Map.Entry<K, Collection<V>>> iterator() {
846+
@Override
847+
public Iterator<Map.Entry<K, Collection<V>>> iterator() {
847848
// Must be manually synchronized.
848-
final Iterator<Map.Entry<K, Collection<V>>> iterator = super.iterator();
849-
return new ForwardingIterator<Map.Entry<K, Collection<V>>>() {
850-
@Override protected Iterator<Map.Entry<K, Collection<V>>> delegate() {
851-
return iterator;
852-
}
853-
854-
@Override public Map.Entry<K, Collection<V>> next() {
855-
final Map.Entry<K, Collection<V>> entry = super.next();
849+
return new TransformedIterator<Map.Entry<K, Collection<V>>, Map.Entry<K, Collection<V>>>(
850+
super.iterator()) {
851+
@Override
852+
Map.Entry<K, Collection<V>> transform(final Map.Entry<K, Collection<V>> entry) {
856853
return new ForwardingMapEntry<K, Collection<V>>() {
857854
@Override protected Map.Entry<K, Collection<V>> delegate() {
858855
return entry;
@@ -1207,13 +1204,9 @@ private static class SynchronizedAsMapValues<V>
12071204

12081205
@Override public Iterator<Collection<V>> iterator() {
12091206
// Must be manually synchronized.
1210-
final Iterator<Collection<V>> iterator = super.iterator();
1211-
return new ForwardingIterator<Collection<V>>() {
1212-
@Override protected Iterator<Collection<V>> delegate() {
1213-
return iterator;
1214-
}
1215-
@Override public Collection<V> next() {
1216-
return typePreservingCollection(super.next(), mutex);
1207+
return new TransformedIterator<Collection<V>, Collection<V>>(super.iterator()) {
1208+
@Override Collection<V> transform(Collection<V> from) {
1209+
return typePreservingCollection(from, mutex);
12171210
}
12181211
};
12191212
}

0 commit comments

Comments
 (0)