Lines Matching refs:comparator

32  * are ordered by an explicit comparator, while others follow the natural sort ordering of their
50 * are equivalent. Instead, with an explicit comparator, the following relation determines whether
55 * {(x, y) | comparator.compare(x, y) == 0}}</pre>
181 * comparator, call {@link #copyOfSorted} instead. This method iterates over {@code elements} at
230 * @throws NullPointerException if {@code comparator} or any of {@code elements} is null
233 Comparator<? super E> comparator, Iterator<? extends E> elements) {
234 checkNotNull(comparator);
235 return copyOfInternal(comparator, elements);
246 * @throws NullPointerException if {@code comparator} or any of {@code elements} is null
249 Comparator<? super E> comparator, Iterable<? extends E> elements) {
250 checkNotNull(comparator);
251 return copyOfInternal(comparator, elements);
270 Comparator<? super E> comparator = sortedMultiset.comparator();
271 if (comparator == null) {
272 comparator = (Comparator<? super E>) NATURAL_ORDER;
274 return copyOfInternal(comparator, sortedMultiset);
279 Comparator<? super E> comparator, Iterable<? extends E> iterable) {
280 if (SortedIterables.hasSameComparator(comparator, iterable)
288 (ImmutableList) ImmutableList.copyOf(SortedIterables.sortedCounts(comparator, iterable));
290 return emptyMultiset(comparator);
293 return RegularImmutableSortedMultiset.createFromSorted(comparator, entries);
297 Comparator<? super E> comparator, Iterator<? extends E> iterator) {
300 (ImmutableList) ImmutableList.copyOf(SortedIterables.sortedCounts(comparator, iterator));
302 return emptyMultiset(comparator);
305 return RegularImmutableSortedMultiset.createFromSorted(comparator, entries);
315 static <E> ImmutableSortedMultiset<E> emptyMultiset(Comparator<? super E> comparator) {
316 if (NATURAL_ORDER.equals(comparator)) {
319 return new EmptyImmutableSortedMultiset<E>(comparator);
322 private final transient Comparator<? super E> comparator;
324 ImmutableSortedMultiset(Comparator<? super E> comparator) {
325 this.comparator = checkNotNull(comparator);
329 public Comparator<? super E> comparator() {
330 return comparator;
333 // Pretend the comparator can compare anything. If it turns out it can't
338 return (Comparator<Object>) comparator;
346 return reverseComparator = Ordering.from(comparator).<E>reverse();
412 * Returns a builder that creates immutable sorted multisets with an explicit comparator. If the
413 * comparator has a more general type than the set being generated, such as creating a {@code
417 * @throws NullPointerException if {@code comparator} is null
419 public static <E> Builder<E> orderedBy(Comparator<E> comparator) {
420 return new Builder<E>(comparator);
437 * natural ordering. The sorted multisets use {@link Ordering#natural()} as the comparator. This
467 private final Comparator<? super E> comparator;
473 public Builder(Comparator<? super E> comparator) {
474 super(TreeMultiset.<E>create(comparator));
475 this.comparator = checkNotNull(comparator);
569 return copyOf(comparator, contents);
574 Comparator comparator;
579 this.comparator = multiset.comparator();
594 Builder<Object> builder = orderedBy(comparator);