Package cdc.enums

Class EnumMask<E extends Enum<E>>

  • Type Parameters:
    E - The enum type.
    All Implemented Interfaces:
    Mask<EnumMask<E>,​E>

    public final class EnumMask<E extends Enum<E>>
    extends AbstractMask<EnumMask<E>,​E>
    Specialization of AbstractEnumMask dedicated to non nullable standard enums masks.

    This class must not (and can not) be specialized to work correctly.
    If specialization is needed, use AbstractEnumMask directly.

    Author:
    Damien Carbonne
    • Method Detail

      • support

        public static <E extends Enum<E>> MaskSupport<EnumMask<E>,​E> support​(Class<E> enumClass)
        Returns the support associated to an enum class.
        Type Parameters:
        E - The enum type.
        Parameters:
        enumClass - The enum class.
        Returns:
        The support for EnumMask<E>.
      • getEnumClasses

        public static Set<Class<? extends Enum<?>>> getEnumClasses()
        Returns:
        A set of enums for which a support has been created.
      • empty

        public static <E extends Enum<E>> EnumMask<E> empty​(Class<E> enumClass)
        Returns the empty mask corresponding to an enum.
        Type Parameters:
        E - The enum type.
        Parameters:
        enumClass - The enum class.
        Returns:
        The empty EnumMask<E>.
      • full

        public static <E extends Enum<E>> EnumMask<E> full​(Class<E> enumClass)
        Returns the full mask corresponding to an enum.
        Type Parameters:
        E - The enum type.
        Parameters:
        enumClass - The enum class.
        Returns:
        The full EnumMask<E>.