Interface ComparableTuple<CONCRETE_TUPLE extends ComparableTuple<CONCRETE_TUPLE>>

Type Parameters:
CONCRETE_TUPLE - the concrete ComparableTuple sub-type
All Superinterfaces:
Comparable<CONCRETE_TUPLE>, Serializable
All Known Implementing Classes:
ComparableEmpty, ComparablePair, ComparableSingle, ComparableTriple

public interface ComparableTuple<CONCRETE_TUPLE extends ComparableTuple<CONCRETE_TUPLE>> extends Comparable<CONCRETE_TUPLE>, Serializable
Base interface for all ComparableTuple's.
A ComparableTuple is an immutable object that can contain the following (supported) number of elements:
Number of element in TupleConcrete ComparableTuple typeFactory method
0ComparableEmptyempty()
1ComparableSingleof(Comparable)
2ComparablePairof(Comparable, Comparable)
3ComparableTripleof(Comparable, Comparable, Comparable)

Note: ComparableTuple (and its subclasses) supports Object.equals(Object) comparison using subclasses for the different subclasses