package net.abhinavsarkar.spelhelper; import static java.util.Collections.unmodifiableList; import static java.util.Collections.unmodifiableSet; import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; final class ImplicitMethods { public static Set distinct(final List list) { return unmodifiableSet(new HashSet(list)); } public static > List sorted( final List list) { List temp = new ArrayList(list); Collections.sort(temp); return unmodifiableList(temp); } public static List reversed(final List list) { List temp = new ArrayList(list); Collections.reverse(temp); return unmodifiableList(temp); } public static List take(final List list, final int n) { return unmodifiableList(list.subList(0, n)); } public static List drop(final List list, final int n) { return unmodifiableList(list.subList(n, list.size())); } }