Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.0-JSR-1
-
None
-
All
Description
/**
- Iterates through this Map transforming each entry into a new value using the closure
- as a transformer, returning a list of transformed values.
* - @param self a Map
- @param closure the closure used for mapping, which can be with one(Map.Entry) or two(key, value) parameters
- @return a List of the mapped values
*/
public static Collection collect(Map self, Collection collection, Closure closure) {
boolean isTwoParams = (closure.getParameterTypes().length == 2);
for (Iterator iter = self.entrySet().iterator(); iter.hasNext() {
if (isTwoParams)Unknown macro: { Map.Entry entry = (Map.Entry) iter.next(); collection.add(closure.call(new Object[]{entry.getKey(), entry.getValue()})); }else
{ collection.add(closure.call(iter.next())); }}
return collection;
}