in lightning-core/src/main/java/org/apache/directmemory/lightning/internal/generator/BytecodeMarshallerGenerator.java [714:766]
private void visitPropertyAccessorValueRead( Class<?> type, MethodVisitor mv )
{
String methodName = null;
String methodSignature = null;
if ( type == boolean.class )
{
methodName = "readBoolean";
methodSignature = PROPERTY_ACCESSOR_READ_BOOLEAN_SIGNATURE;
}
else if ( type == byte.class )
{
methodName = "readByte";
methodSignature = PROPERTY_ACCESSOR_READ_BYTE_SIGNATURE;
}
else if ( type == char.class )
{
methodName = "readChar";
methodSignature = PROPERTY_ACCESSOR_READ_CHAR_SIGNATURE;
}
else if ( type == short.class )
{
methodName = "readShort";
methodSignature = PROPERTY_ACCESSOR_READ_SHORT_SIGNATURE;
}
else if ( type == int.class )
{
methodName = "readInt";
methodSignature = PROPERTY_ACCESSOR_READ_INT_SIGNATURE;
}
else if ( type == long.class )
{
methodName = "readLong";
methodSignature = PROPERTY_ACCESSOR_READ_LONG_SIGNATURE;
}
else if ( type == float.class )
{
methodName = "readFloat";
methodSignature = PROPERTY_ACCESSOR_READ_FLOAT_SIGNATURE;
}
else if ( type == double.class )
{
methodName = "readDouble";
methodSignature = PROPERTY_ACCESSOR_READ_DOUBLE_SIGNATURE;
}
else
{
methodName = "readObject";
methodSignature = PROPERTY_ACCESSOR_READ_OBJECT_SIGNATURE;
}
mv.visitMethodInsn( INVOKEINTERFACE, VALUEPROPERTYACCESSOR_CLASS_INTERNAL_TYPE, methodName, methodSignature );
}