/** Returns a newly-created immutable multimap. */ public ImmutableMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return ImmutableListMultimap.fromMapEntries(mapEntries, valueComparator); } }
/** Returns a newly-created immutable set multimap. */ @Override public ImmutableSetMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return fromMapEntries(mapEntries, valueComparator); } }
/** * Returns an {@code ImmutableRangeMap} containing the associations previously added to this * builder. * * @throws IllegalArgumentException if any two ranges inserted into this builder overlap */ public ImmutableRangeMap<K, V> build() { Collections.sort(entries, Range.<K>rangeLexOrdering().onKeys()); ImmutableList.Builder<Range<K>> rangesBuilder = new ImmutableList.Builder<>(entries.size()); ImmutableList.Builder<V> valuesBuilder = new ImmutableList.Builder<V>(entries.size()); for (int i = 0; i < entries.size(); i++) { Range<K> range = entries.get(i).getKey(); if (i > 0) { Range<K> prevRange = entries.get(i - 1).getKey(); if (range.isConnected(prevRange) && !range.intersection(prevRange).isEmpty()) { throw new IllegalArgumentException( "Overlapping ranges: range " + prevRange + " overlaps with entry " + range); } } rangesBuilder.add(range); valuesBuilder.add(entries.get(i).getValue()); } return new ImmutableRangeMap<>(rangesBuilder.build(), valuesBuilder.build()); } }
/** Returns a newly-created immutable multimap. */ public ImmutableMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return ImmutableListMultimap.fromMapEntries(mapEntries, valueComparator); } }
/** Returns a newly-created immutable set multimap. */ @Override public ImmutableSetMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return fromMapEntries(mapEntries, valueComparator); } }
@Override public Iterable<Entry<Range<Integer>, String>> order( List<Entry<Range<Integer>, String>> insertionOrder) { return Range.<Integer>rangeLexOrdering().onKeys().sortedCopy(insertionOrder); }
@Override public Iterable<Entry<Range<Integer>, String>> order( List<Entry<Range<Integer>, String>> insertionOrder) { return Range.<Integer>rangeLexOrdering().onKeys().sortedCopy(insertionOrder); }
/** Returns a newly-created immutable set multimap. */ @Override public ImmutableSetMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return fromMapEntries(mapEntries, valueComparator); } }
/** Returns a newly-created immutable multimap. */ public ImmutableMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return ImmutableListMultimap.fromMapEntries(mapEntries, valueComparator); } }
@Override public Iterable<Entry<Range<Integer>, String>> order( List<Entry<Range<Integer>, String>> insertionOrder) { return Range.<Integer>rangeLexOrdering() .reverse() .onKeys() .sortedCopy(insertionOrder); }
/** * Returns an {@code ImmutableRangeMap} containing the associations previously added to this * builder. * * @throws IllegalArgumentException if any two ranges inserted into this builder overlap */ public ImmutableRangeMap<K, V> build() { Collections.sort(entries, Range.<K>rangeLexOrdering().onKeys()); ImmutableList.Builder<Range<K>> rangesBuilder = new ImmutableList.Builder<>(entries.size()); ImmutableList.Builder<V> valuesBuilder = new ImmutableList.Builder<V>(entries.size()); for (int i = 0; i < entries.size(); i++) { Range<K> range = entries.get(i).getKey(); if (i > 0) { Range<K> prevRange = entries.get(i - 1).getKey(); if (range.isConnected(prevRange) && !range.intersection(prevRange).isEmpty()) { throw new IllegalArgumentException( "Overlapping ranges: range " + prevRange + " overlaps with entry " + range); } } rangesBuilder.add(range); valuesBuilder.add(entries.get(i).getValue()); } return new ImmutableRangeMap<>(rangesBuilder.build(), valuesBuilder.build()); } }
/** * Returns an {@code ImmutableRangeMap} containing the associations previously added to this * builder. * * @throws IllegalArgumentException if any two ranges inserted into this builder overlap */ public ImmutableRangeMap<K, V> build() { Collections.sort(entries, Range.<K>rangeLexOrdering().onKeys()); ImmutableList.Builder<Range<K>> rangesBuilder = new ImmutableList.Builder<>(entries.size()); ImmutableList.Builder<V> valuesBuilder = new ImmutableList.Builder<V>(entries.size()); for (int i = 0; i < entries.size(); i++) { Range<K> range = entries.get(i).getKey(); if (i > 0) { Range<K> prevRange = entries.get(i - 1).getKey(); if (range.isConnected(prevRange) && !range.intersection(prevRange).isEmpty()) { throw new IllegalArgumentException( "Overlapping ranges: range " + prevRange + " overlaps with entry " + range); } } rangesBuilder.add(range); valuesBuilder.add(entries.get(i).getValue()); } return new ImmutableRangeMap<>(rangesBuilder.build(), valuesBuilder.build()); } }
@Override public Iterable<Entry<Range<Integer>, String>> order( List<Entry<Range<Integer>, String>> insertionOrder) { return Range.<Integer>rangeLexOrdering() .reverse() .onKeys() .sortedCopy(insertionOrder); }
/** Returns a newly-created immutable set multimap. */ @Override public ImmutableSetMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return fromMapEntries(mapEntries, valueComparator); } }
/** Returns a newly-created immutable multimap. */ public ImmutableMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return ImmutableListMultimap.fromMapEntries(mapEntries, valueComparator); } }
/** Returns a newly-created immutable multimap. */ public ImmutableMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return ImmutableListMultimap.fromMapEntries(mapEntries, valueComparator); } }
/** Returns a newly-created immutable set multimap. */ @Override public ImmutableSetMultimap<K, V> build() { Collection<Map.Entry<K, Collection<V>>> mapEntries = builderMap.entrySet(); if (keyComparator != null) { mapEntries = Ordering.from(keyComparator).<K>onKeys().immutableSortedCopy(mapEntries); } return fromMapEntries(mapEntries, valueComparator); } }
@Override public Iterable<Entry<Range<Integer>, String>> order( List<Entry<Range<Integer>, String>> insertionOrder) { return Range.<Integer>rangeLexOrdering().onKeys().sortedCopy(insertionOrder); }
@Override public Iterable<Entry<Range<Integer>, String>> order( List<Entry<Range<Integer>, String>> insertionOrder) { return Range.<Integer>rangeLexOrdering() .reverse() .onKeys() .sortedCopy(insertionOrder); }
@Override public Iterable<Entry<Range<Integer>, String>> order( List<Entry<Range<Integer>, String>> insertionOrder) { return Range.<Integer>rangeLexOrdering() .reverse() .onKeys() .sortedCopy(insertionOrder); }