@GwtCompatible(emulated=true) public final class Enums extends java.lang.Object
Enum instances.| Modifier and Type | Class and Description |
|---|---|
private static class |
Enums.StringConverter<T extends java.lang.Enum<T>> |
| Modifier and Type | Field and Description |
|---|---|
private static java.util.Map<java.lang.Class<? extends java.lang.Enum<?>>,java.util.Map<java.lang.String,java.lang.ref.WeakReference<? extends java.lang.Enum<?>>>> |
enumConstantCache |
| Modifier | Constructor and Description |
|---|---|
private |
Enums() |
| Modifier and Type | Method and Description |
|---|---|
(package private) static <T extends java.lang.Enum<T>> |
getEnumConstants(java.lang.Class<T> enumClass) |
static java.lang.reflect.Field |
getField(java.lang.Enum<?> enumValue)
Returns the
Field in which enumValue is defined. |
static <T extends java.lang.Enum<T>> |
getIfPresent(java.lang.Class<T> enumClass,
java.lang.String value)
Returns an optional enum constant for the given type, using
Enum.valueOf(java.lang.Class<T>, java.lang.String). |
private static <T extends java.lang.Enum<T>> |
populateCache(java.lang.Class<T> enumClass) |
static <T extends java.lang.Enum<T>> |
stringConverter(java.lang.Class<T> enumClass)
Returns a converter that converts between strings and
enum values of type
enumClass using Enum.valueOf(Class, String) and Enum.name(). |
@GwtIncompatible private static final java.util.Map<java.lang.Class<? extends java.lang.Enum<?>>,java.util.Map<java.lang.String,java.lang.ref.WeakReference<? extends java.lang.Enum<?>>>> enumConstantCache
@GwtIncompatible public static java.lang.reflect.Field getField(java.lang.Enum<?> enumValue)
Field in which enumValue is defined. For example, to get the
Description annotation on the GOLF constant of enum Sport, use
Enums.getField(Sport.GOLF).getAnnotation(Description.class).public static <T extends java.lang.Enum<T>> Optional<T> getIfPresent(java.lang.Class<T> enumClass, java.lang.String value)
Enum.valueOf(java.lang.Class<T>, java.lang.String). If the
constant does not exist, Optional.absent() is returned. A common use case is for parsing
user input or falling back to a default enum constant. For example,
Enums.getIfPresent(Country.class, countryInput).or(Country.DEFAULT);@GwtIncompatible private static <T extends java.lang.Enum<T>> java.util.Map<java.lang.String,java.lang.ref.WeakReference<? extends java.lang.Enum<?>>> populateCache(java.lang.Class<T> enumClass)
@GwtIncompatible static <T extends java.lang.Enum<T>> java.util.Map<java.lang.String,java.lang.ref.WeakReference<? extends java.lang.Enum<?>>> getEnumConstants(java.lang.Class<T> enumClass)
public static <T extends java.lang.Enum<T>> Converter<java.lang.String,T> stringConverter(java.lang.Class<T> enumClass)
enum values of type
enumClass using Enum.valueOf(Class, String) and Enum.name(). The
converter will throw an IllegalArgumentException if the argument is not the name of any
enum constant in the specified enum.