Package jnr.ffi.util
Class EnumMapper
- java.lang.Object
-
- jnr.ffi.util.EnumMapper
-
public final class EnumMapper extends java.lang.Object
Provides mapping from Enum values to native integers and vice-versa
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
EnumMapper.IntegerEnum
private static class
EnumMapper.StaticDataHolder
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Class<? extends java.lang.Enum>
enumClass
private java.lang.Integer[]
intValues
private java.lang.Long[]
longValues
private java.util.Map<java.lang.Number,java.lang.Enum>
reverseLookupMap
-
Constructor Summary
Constructors Modifier Constructor Description private
EnumMapper(java.lang.Class<? extends java.lang.Enum> enumClass)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static EnumMapper
addMapper(java.lang.Class<? extends java.lang.Enum> enumClass)
private java.lang.Enum
badValue(java.lang.Number value)
static EnumMapper
getInstance(java.lang.Class<? extends java.lang.Enum> enumClass)
private static java.lang.reflect.Method
getNumberValueMethod(java.lang.Class c, java.lang.Class numberClass)
java.lang.Integer
integerValue(java.lang.Enum value)
int
intValue(java.lang.Enum value)
java.lang.Long
longValue(java.lang.Enum value)
private static java.lang.Number
reflectedNumberValue(java.lang.Enum e, java.lang.reflect.Method m)
private java.lang.Enum
reverseLookup(java.lang.Number value)
java.lang.Enum
valueOf(int value)
java.lang.Enum
valueOf(long value)
java.lang.Enum
valueOf(java.lang.Number value)
-
-
-
Method Detail
-
getInstance
public static EnumMapper getInstance(java.lang.Class<? extends java.lang.Enum> enumClass)
-
addMapper
private static EnumMapper addMapper(java.lang.Class<? extends java.lang.Enum> enumClass)
-
getNumberValueMethod
private static java.lang.reflect.Method getNumberValueMethod(java.lang.Class c, java.lang.Class numberClass)
-
reflectedNumberValue
private static java.lang.Number reflectedNumberValue(java.lang.Enum e, java.lang.reflect.Method m)
-
integerValue
public final java.lang.Integer integerValue(java.lang.Enum value)
-
intValue
public final int intValue(java.lang.Enum value)
-
longValue
public final java.lang.Long longValue(java.lang.Enum value)
-
valueOf
public java.lang.Enum valueOf(int value)
-
valueOf
public java.lang.Enum valueOf(long value)
-
valueOf
public java.lang.Enum valueOf(java.lang.Number value)
-
reverseLookup
private java.lang.Enum reverseLookup(java.lang.Number value)
-
badValue
private java.lang.Enum badValue(java.lang.Number value)
-
-