I originally did that but it gets quite complicated because whereas Sets can contain any type of classes, EnumSets are limited to containing Enum types, and it got really ugly.