/** *

Contract Marker: TypeSafeEnum
* Description: The Type Safe Enumeration "contract" requires a class * to follow the design pattern as documented on the * * Java web site. * This contract uses a variant that implies that serialization is * done properly and may or may not use an integer ordinal value. *
Note that this contract commits the subclasses to implement * Serializable. When done properly, the default equals, hashCode, * and toString methods will be sufficient to claim adherence to the Abelian * contract too for free! * @see "Effective Java; Item 21" */ public interface TypeSafeEnum extends Contract, java.io.Serializable, Abelian {}