I want to union two ImmutableEnumSets
from Guava.
Here's my try on it:
public final class OurColors {
public enum Colors {
RED,
GREEN,
BLUE,
YELLOW,
PINK,
BLACK
}
public final static ImmutableSet<Colors> myColorSet =
Sets.immutableEnumSet(Colors.BLUE,
Colors.GREEN);
public final static ImmutableSet<Colors> yourColorSet =
Sets.immutableEnumSet(Colors.YELLOW,
Colors.PINK);
public final static ImmutableSet<Colors> ourColorSet =
Sets.union(myColorSet, ourColorSet);
}
The field ourColorSet
does not compile, it fails with
Type mismatch: cannot convert from Sets.SetView<OurColors.Colors> to
ImmutableSet<OurColors.Colors>
How is the union done correct?