@Override public K invoke(Pair<K, V> pair) { return pair.component1(); } });
@Override public K firstKey() { Pair<K, V> first = map.first(); if (first == null) throw new NoSuchElementException("Empty map"); return first.component1(); }
@Override public K lastKey() { Pair<K, V> last = map.last(); if (last == null) throw new NoSuchElementException("Empty map"); return last.component1(); } }
@NotNull @Override public SortedMap<K, V> to(@NotNull K key, boolean inclusive) { Pair<K, V> first = first(); if (first == null) return this; return range(first.component1(), true, key, inclusive); }
@NotNull @Override public SortedMap<K, V> to(@NotNull K key, boolean inclusive) { Pair<K, V> first = first(); if (first == null) return this; return range(first.component1(), true, key, inclusive); }
@NotNull @Override public SortedMap<K, V> to(@NotNull K key, boolean inclusive) { Pair<K, V> first = first(); if (first == null) return this; return range(first.component1(), true, key, inclusive); }
@NotNull public static <K, V> Map<K, V> copyOf(Iterator<Pair<K, V>> iterator) { HashMap<K, V> result = HashMap.empty(); while (iterator.hasNext()) { Pair<K, V> pair = iterator.next(); result = result.put(pair.component1(), pair.component2()); } return result; }
@NotNull public static <K, V> SortedMap<K, V> copyOf(Comparator<? super K> comparator, Iterator<Pair<K, V>> iterator) { SortedMap<K, V> result = new TreeMap<K, V>(comparator, null); while (iterator.hasNext()) { Pair<K, V> pair = iterator.next(); result = result.put(pair.component1(), pair.component2()); } return result; }
@NotNull public static <K, V> SortedMap<K, V> copyOf(Comparator<? super K> comparator, Iterator<Pair<K, V>> iterator) { SortedMap<K, V> result = new TreeMap<K, V>(comparator, null); while (iterator.hasNext()) { Pair<K, V> pair = iterator.next(); result = result.put(pair.component1(), pair.component2()); } return result; }
@Override public int compare(@NotNull Pair<Integer, Integer> o1, @NotNull Pair<Integer, Integer> o2) { return o1.component1().compareTo(o2.component1()); } };
@Override public Object invoke(Pair<K, V> pair) { result[0] = result[0].put(pair.component1(), pair.component2()); return null; } });
@Override public Object invoke(Pair<K, V> pair) { result[0] = result[0].put(pair.component1(), pair.component2()); return null; } });
@NotNull public static <K, V> Map<K, V> copyOf(Pair<K, V>[] pairs) { HashMap<K, V> result = HashMap.empty(); for (Pair<K, V> pair : pairs) { result = result.put(pair.component1(), pair.component2()); } return result; }
@NotNull public static <K, V> SortedMap<K, V> copyOf(Comparator<? super K> comparator, java.lang.Iterable<Pair<K, V>> iterable) { SortedMap<K, V> result = new TreeMap<K, V>(comparator, null); for (Pair<K, V> pair : iterable) { result = result.put(pair.component1(), pair.component2()); } return result; }
@NotNull public static <K, V> Map<K, V> copyOf(Pair<K, V>[] pairs) { HashMap<K, V> result = HashMap.empty(); for (Pair<K, V> pair : pairs) { result = result.put(pair.component1(), pair.component2()); } return result; }
private static <K, V> SortedMap<K, V> construct(Comparator<? super K> comparator, Pair<K, V>... pairs) { SortedMap<K, V> map = new TreeMap<K, V>(comparator, null); for (Pair<K, V> pair : pairs) { map = map.put(pair.component1(), pair.component2()); } return map; }
@NotNull @Override public Builder<Pair<K, V>, Map<K, V>> add(Pair<K, V> element) { map.put(element.component1(), element.component2()); return this; }
private static <K extends Comparable<? super K>, V> SortedMap<K, V> construct(Pair<K, V>... pairs) { SortedMap<K, V> map = new TreeMap<K, V>(); for (Pair<K, V> pair : pairs) { map = map.put(pair.component1(), pair.component2()); } return map; }
private static <K extends Comparable<? super K>, V> SortedMap<K, V> construct(Pair<K, V>... pairs) { SortedMap<K, V> map = new TreeMap<K, V>(); for (Pair<K, V> pair : pairs) { map = map.put(pair.component1(), pair.component2()); } return map; }
private static <K, V> Map<K, V> construct(Pair<K, V>... pairs) { Map<K, V> map = HashMap.empty(); for (Pair<K, V> pair : pairs) { map = map.put(pair.component1(), pair.component2()); } return map; }