else if (fieldClass == int.class)
cachedField = new AsmIntField();
else if (fieldClass == long.class)
cachedField = new AsmLongField();
else if (fieldClass == float.class)
cachedField = new AsmFloatField();
else if (fieldClass == double.class)
cachedField = new AsmDoubleField();
else {
cachedField = new AsmObjectField(ser);
}