Java EnumSet Create toEnumSet(Class enumClass, long vector)

Here you can find the source of toEnumSet(Class enumClass, long vector)

Description

to Enum Set

License

Open Source License

Declaration

private static <E extends Enum<E>> EnumSet<E> toEnumSet(Class<E> enumClass, long vector) 

Method Source Code

//package com.java2s;
/*// ww w  .j  a v  a2  s  . c  o  m
   This file is part of ADBCJ.
    
   ADBCJ is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation, either version 3 of the License, or
   (at your option) any later version.
    
   ADBCJ is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
    
   You should have received a copy of the GNU General Public License
   along with ADBCJ.  If not, see <http://www.gnu.org/licenses/>.
    
   Copyright 2008  Mike Heath
 */

import java.util.EnumSet;

public class Main {
    private static <E extends Enum<E>> EnumSet<E> toEnumSet(Class<E> enumClass, long vector) {
        EnumSet<E> set = EnumSet.noneOf(enumClass);
        long mask = 1;
        for (E e : enumClass.getEnumConstants()) {
            if ((mask & vector) == mask) {
                set.add(e);
            }
            mask <<= 1;
        }
        return set;
    }
}

Related

  1. noneOf( Class elementType)
  2. of(E e1, E... e)
  3. of(E[] c)
  4. parseEnum(final Class klass, final String input)
  5. toEnumSet( Class classValue, Collection stringValues)
  6. toEnumSet(Class clazz, T... ts)