static <T extends Enum<T>> ConstantResolver<T> getResolver(Class<T> enumType, int first, int last) { return new ConstantResolver<T>(enumType, first, last, false); }
public final String description() { return resolver.description(this); } public final boolean defined() { return resolver.defined(this); }
public final int intValue() { return (int) resolver.longValue(this); } public final long longValue() { return resolver.longValue(this); }
public static SocketLevel valueOf(long value) { return resolver.valueOf(value); } }
final String description(E e) { return getConstant(e).toString(); }
public final boolean defined() { return resolver.defined(this); } public final String toString() { return description(); }
@SuppressWarnings("unchecked") final E valueOf(long value) { E e; if (value >= 0 && value < 256 && valueCache != null && (e = valueCache[(int) value]) != null) { return e; } e = reverseLookupMap.get(value); if (e != null) { return e; } Constant c = getConstants().getConstant(value); if (c != null) { try { e = Enum.valueOf(enumType, c.name()); reverseLookupMap.put(value, e); if (c.intValue() >= 0 && c.intValue() < 256) { E[] values = valueCache; if (values == null) { values = (E[]) Array.newInstance(enumType, 256); } values[c.intValue()] = e; valueCache = values; } return e; } catch (IllegalArgumentException ex) {} } return Enum.valueOf(enumType, __UNKNOWN_CONSTANT__); }
private Constant getConstant(E e) { Constant c; if (cacheGuard != 0 && (c = cache[e.ordinal()]) != null) { // read volatile guard return c; } // fallthru to slow lookup+add return lookupAndCacheConstant(e); }
public static Signal valueOf(long value) { return resolver.valueOf(value); } }
final String description(E e) { return getConstant(e).toString(); }
public final boolean defined() { return resolver.defined(this); } public final String toString() { return description(); }
@SuppressWarnings("unchecked") final E valueOf(long value) { E e; if (value >= 0 && value < 256 && valueCache != null && (e = valueCache[(int) value]) != null) { return e; } e = reverseLookupMap.get(value); if (e != null) { return e; } Constant c = getConstants().getConstant(value); if (c != null) { try { e = Enum.valueOf(enumType, c.name()); reverseLookupMap.put(value, e); if (c.intValue() >= 0 && c.intValue() < 256) { E[] values = valueCache; if (values == null) { values = (E[]) Array.newInstance(enumType, 256); } values[c.intValue()] = e; valueCache = values; } return e; } catch (IllegalArgumentException ex) {} } return Enum.valueOf(enumType, __UNKNOWN_CONSTANT__); }
private Constant getConstant(E e) { Constant c; if (cacheGuard != 0 && (c = cache[e.ordinal()]) != null) { // read volatile guard return c; } // fallthru to slow lookup+add return lookupAndCacheConstant(e); }
public static NameInfo valueOf(long value) { return resolver.valueOf(value); } }
public final String description() { return resolver.description(this); } public final boolean defined() { return resolver.defined(this); }
public final long longValue() { return resolver.longValue(this); } public final String description() { return resolver.description(this); }
final String description(E e) { return getConstant(e).toString(); }
static <T extends Enum<T>> ConstantResolver<T> getBitmaskResolver(Class<T> enumType) { return new ConstantResolver<T>(enumType, 0, 0x80000000, true); }
public final boolean defined() { return resolver.defined(this); } public final String toString() { return description(); }
@SuppressWarnings("unchecked") final E valueOf(long value) { E e; if (value >= 0 && value < 256 && valueCache != null && (e = valueCache[(int) value]) != null) { return e; } e = reverseLookupMap.get(value); if (e != null) { return e; } Constant c = getConstants().getConstant(value); if (c != null) { try { e = Enum.valueOf(enumType, c.name()); reverseLookupMap.put(value, e); if (c.intValue() >= 0 && c.intValue() < 256) { E[] values = valueCache; if (values == null) { values = (E[]) Array.newInstance(enumType, 256); } values[c.intValue()] = e; valueCache = values; } return e; } catch (IllegalArgumentException ex) {} } return Enum.valueOf(enumType, __UNKNOWN_CONSTANT__); }