Class ImmutableEnumSet<E extends java.lang.Enum<E>>

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Iterable<E>, java.util.Collection<E>, java.util.Set<E>

    @GwtCompatible(serializable=true,
                   emulated=true)
    final class ImmutableEnumSet<E extends java.lang.Enum<E>>
    extends ImmutableSet<E>
    Implementation of ImmutableSet backed by a non-empty EnumSet.
    • Field Detail

      • delegate

        private final transient java.util.EnumSet<E extends java.lang.Enum<E>> delegate
      • hashCode

        private transient int hashCode
    • Constructor Detail

      • ImmutableEnumSet

        private ImmutableEnumSet​(java.util.EnumSet<E> delegate)
    • Method Detail

      • asImmutable

        static ImmutableSet asImmutable​(java.util.EnumSet set)
      • isPartialView

        boolean isPartialView()
        Description copied from class: ImmutableCollection
        Returns true if this immutable collection's implementation contains references to user-created objects that aren't accessible via this collection's methods. This is generally used to determine whether copyOf implementations should make an explicit copy to avoid memory leaks.
        Specified by:
        isPartialView in class ImmutableCollection<E extends java.lang.Enum<E>>
      • iterator

        public UnmodifiableIterator<E> iterator()
        Description copied from class: ImmutableCollection
        Returns an unmodifiable iterator across the elements in this collection.
        Specified by:
        iterator in interface java.util.Collection<E extends java.lang.Enum<E>>
        Specified by:
        iterator in interface java.lang.Iterable<E extends java.lang.Enum<E>>
        Specified by:
        iterator in interface java.util.Set<E extends java.lang.Enum<E>>
        Specified by:
        iterator in class ImmutableSet<E extends java.lang.Enum<E>>
      • size

        public int size()
        Specified by:
        size in interface java.util.Collection<E extends java.lang.Enum<E>>
        Specified by:
        size in interface java.util.Set<E extends java.lang.Enum<E>>
        Specified by:
        size in class java.util.AbstractCollection<E extends java.lang.Enum<E>>
      • contains

        public boolean contains​(java.lang.Object object)
        Specified by:
        contains in interface java.util.Collection<E extends java.lang.Enum<E>>
        Specified by:
        contains in interface java.util.Set<E extends java.lang.Enum<E>>
        Specified by:
        contains in class ImmutableCollection<E extends java.lang.Enum<E>>
      • containsAll

        public boolean containsAll​(java.util.Collection<?> collection)
        Specified by:
        containsAll in interface java.util.Collection<E extends java.lang.Enum<E>>
        Specified by:
        containsAll in interface java.util.Set<E extends java.lang.Enum<E>>
        Overrides:
        containsAll in class java.util.AbstractCollection<E extends java.lang.Enum<E>>
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface java.util.Collection<E extends java.lang.Enum<E>>
        Specified by:
        isEmpty in interface java.util.Set<E extends java.lang.Enum<E>>
        Overrides:
        isEmpty in class java.util.AbstractCollection<E extends java.lang.Enum<E>>
      • equals

        public boolean equals​(java.lang.Object object)
        Specified by:
        equals in interface java.util.Collection<E extends java.lang.Enum<E>>
        Specified by:
        equals in interface java.util.Set<E extends java.lang.Enum<E>>
        Overrides:
        equals in class ImmutableSet<E extends java.lang.Enum<E>>
      • isHashCodeFast

        boolean isHashCodeFast()
        Description copied from class: ImmutableSet
        Returns true if the hashCode() method runs quickly.
        Overrides:
        isHashCodeFast in class ImmutableSet<E extends java.lang.Enum<E>>
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface java.util.Collection<E extends java.lang.Enum<E>>
        Specified by:
        hashCode in interface java.util.Set<E extends java.lang.Enum<E>>
        Overrides:
        hashCode in class ImmutableSet<E extends java.lang.Enum<E>>
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.util.AbstractCollection<E extends java.lang.Enum<E>>