/** Returns a Comparison result from the two values using a Comparator. */ public static <T> Comparison compare(Comparator<T> comparator, T a, T b) { return from(comparator.compare(a, b)); }
/** Returns a Comparison result from the two given Comparables. */ public static <T extends Comparable<T>> Comparison compare(T a, T b) { return from(a.compareTo(b)); }
/** Returns a Comparison result from the two values using a Comparator. */ public static <T> Comparison compare(Comparator<T> comparator, T a, T b) { return from(comparator.compare(a, b)); }
/** Returns a Comparison result from the two given Comparables. */ public static <T extends Comparable<T>> Comparison compare(T a, T b) { return from(a.compareTo(b)); }
/** Compares the two objects using the {@link Comparator}. */ @CheckReturnValue public static <T> Comparison compare(Comparator<T> comparator, @Nullable T a, @Nullable T b) { return from(comparator.compare(a, b)); }
/** Compares the two {@link Comparable}s and returns the result. */ @CheckReturnValue public static <T extends Comparable<T>> Comparison compare(T a, T b) { requireNonNull(a); requireNonNull(b); return from(a.compareTo(b)); }