package org.activityinfo.promise;
import com.google.common.base.Function;
import com.google.common.collect.Lists;
import org.activityinfo.promise.BiFunction;
import java.util.List;
/**
* Map a function over a list and concatenate the results.
*/
public class ConcatMapFunction<T, R> extends BiFunction<Function<T, R>, Iterable<T>, List<R>> {
@Override
public List<R> apply(Function<T, R> function, Iterable<T> items) {
List<R> list = Lists.newArrayList();
for(T item : items) {
list.add(function.apply(item));
}
return list;
}
}