static Ordering<Object> 
Ordering.allEqual() 
Returns an ordering which treats all values as equal, indicating "no ordering." Passing this
ordering to any stable sort algorithm results in no change to the order of elements.

static Ordering<Object> 
Ordering.arbitrary() 
Returns an arbitrary ordering over all objects, for which compare(a, b) == 0 implies
a == b (identity equality).

static <T> Ordering<T> 
Ordering.compound(Iterable<? extends Comparator<? super T>> comparators) 
Returns an ordering which tries each given comparator in order until a nonzero result is
found, returning that result, and returning zero only if all comparators return zero.

<U extends T> Ordering<U> 
Ordering.compound(Comparator<? super U> secondaryComparator) 
Returns an ordering which first uses the ordering this , but which in the event of a
"tie", then delegates to secondaryComparator .

static <T> Ordering<T> 
Ordering.explicit(List<T> valuesInOrder) 
Returns an ordering that compares objects according to the order in which they appear in the
given list.

static <T> Ordering<T> 
Ordering.explicit(T leastValue,
T... remainingValuesInOrder) 
Returns an ordering that compares objects according to the order in which they are given to
this method.

static <T> Ordering<T> 
Ordering.from(Ordering<T> ordering) 
Deprecated.

static <T> Ordering<T> 
Ordering.from(Comparator<T> comparator) 
Returns an ordering based on an existing comparator instance.

<S extends T> Ordering<Iterable<S>> 
Ordering.lexicographical() 
Returns a new ordering which sorts iterables by comparing corresponding elements pairwise until
a nonzero result is found; imposes "dictionary order".

static <C extends Comparable> Ordering<C> 
Ordering.natural() 
Returns a serializable ordering that uses the natural order of the values.

<S extends T> Ordering<S> 
Ordering.nullsFirst() 
Returns an ordering that treats null as less than all other values and uses
this to compare nonnull values.

<S extends T> Ordering<S> 
Ordering.nullsLast() 
Returns an ordering that treats null as greater than all other values and uses this
ordering to compare nonnull values.

<F> Ordering<F> 
Ordering.onResultOf(Function<F,? extends T> function) 
Returns a new ordering on F which orders elements by first applying a function to them,
then comparing those results using this .

<S extends T> Ordering<S> 
Ordering.reverse() 

static Ordering<Object> 
Ordering.usingToString() 
Returns an ordering that compares objects by the natural ordering of their string
representations as returned by toString() .
