package tuple; /** * An immutable 0-tuple. Can be used as a dummy object. */ public class Unit implements Tuple { /** * A shared instance of the unit class. */ public static final Unit UNIT = new Unit(); public Unit () { } public boolean equals (Object o) { return (o != null && o instanceof Unit); } public int hashCode () { return 0; } /** * Gets an array representation of this tuple. * * @return An array of length 0. */ public Object[] toArray () { return new Object[]{}; } }