Here you can find the source of mask(EnumSet
public static <E extends Enum<E>> EnumSet<E> mask(EnumSet<E> theSet, E mask)
//package com.java2s; /*//from w w w. j a v a2 s . c o m * Copyright (C) 2009 Emweb bvba, Leuven, Belgium. * * See the LICENSE file for terms of use. */ import java.util.EnumSet; public class Main { public static <E extends Enum<E>> EnumSet<E> mask(EnumSet<E> theSet, E mask) { EnumSet<E> retval = EnumSet.copyOf(theSet); EnumSet<E> theMask = EnumSet.of(mask); retval.retainAll(theMask); return retval; } public static <E extends Enum<E>> EnumSet<E> mask(EnumSet<E> theSet, EnumSet<E> mask) { EnumSet<E> retval = EnumSet.copyOf(theSet); retval.retainAll(mask); return retval; } }