public class Structure<T extends java.lang.Enum<T>>
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
private static class |
Structure.StructuresPool |
static interface |
Structure.TypeSafety |
Modifier and Type | Field and Description |
---|---|
private static java.lang.Object |
BOOLEAN_MARKER |
private T[] |
copySource |
private java.lang.Class<?> |
enumClass |
private static Structure.StructuresPool |
globalPool |
private static java.lang.Object |
LONG_MARKER |
private long[] |
longValues |
private java.lang.Object[] |
nonPrimitiveValues |
private long |
requestedFields |
Modifier | Constructor and Description |
---|---|
private |
Structure(java.lang.Class<T> enumClass,
java.lang.Enum<T>... fields) |
Modifier and Type | Method and Description |
---|---|
private static long[] |
adjustArraySize(long[] array,
int desiredSize) |
private static java.lang.Object[] |
adjustArraySize(java.lang.Object[] array,
int desiredSize) |
private void |
assertSafeType(T e,
java.lang.Class<?> c) |
void |
clear() |
boolean |
equals(java.lang.Object e) |
Structure<T> |
from(T... fields) |
<X> X |
get(T e) |
boolean |
hasField(java.lang.Enum<T> field) |
int |
hashCode() |
boolean |
hasValue(java.lang.Enum<?> e) |
private void |
init(java.lang.Class<?> enumClass,
java.lang.Enum<?>... fields) |
<X extends java.lang.Enum<X>> |
into(Structure<X> target,
X... fields) |
boolean |
is(T e) |
long |
lng(T e) |
static <X extends Structure<T>,T extends java.lang.Enum<T>> |
obtain(java.lang.Class<T> e) |
static <X extends Structure<T>,T extends java.lang.Enum<T>> |
obtain(java.lang.Class<T> e,
java.lang.Enum<T>... fields) |
void |
release() |
private static void |
release(Structure<?> e) |
void |
set(T x,
boolean v) |
void |
set(T x,
long v) |
void |
set(T x,
java.lang.Object v) |
java.lang.String |
text(T e) |
java.lang.String |
toString() |
void |
unset(T x) |
private static final Structure.StructuresPool globalPool
private static final java.lang.Object LONG_MARKER
private static final java.lang.Object BOOLEAN_MARKER
private java.lang.Class<?> enumClass
private long requestedFields
private java.lang.Object[] nonPrimitiveValues
private long[] longValues
public static <X extends Structure<T>,T extends java.lang.Enum<T>> X obtain(java.lang.Class<T> e, java.lang.Enum<T>... fields)
public static <X extends Structure<T>,T extends java.lang.Enum<T>> X obtain(java.lang.Class<T> e)
private static void release(Structure<?> e)
public long lng(T e)
public java.lang.String text(T e)
public boolean is(T e)
public boolean hasValue(java.lang.Enum<?> e)
public <X> X get(T e)
public void set(T x, java.lang.Object v)
public void unset(T x)
public void set(T x, long v)
public void set(T x, boolean v)
public boolean hasField(java.lang.Enum<T> field)
public void clear()
public void release()
public <X extends java.lang.Enum<X>> void into(Structure<X> target, X... fields)
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object e)
equals
in class java.lang.Object
private void assertSafeType(T e, java.lang.Class<?> c)
private void init(java.lang.Class<?> enumClass, java.lang.Enum<?>... fields)
private static java.lang.Object[] adjustArraySize(java.lang.Object[] array, int desiredSize)
private static long[] adjustArraySize(long[] array, int desiredSize)
public java.lang.String toString()
toString
in class java.lang.Object