in lightning-core/src/main/java/org/apache/directmemory/lightning/internal/generator/BytecodeMarshallerGenerator.java [822:864]
private void visitPrimitiveAutoboxing( Class<?> type, MethodVisitor mv )
{
if ( type == boolean.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Boolean" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Boolean", "booleanValue", "()Z" );
}
else if ( type == byte.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Byte" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Byte", "byteValue", "()B" );
}
else if ( type == char.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Character" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Character", "charValue", "()C" );
}
else if ( type == short.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Short" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Short", "shortValue", "()S" );
}
else if ( type == int.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Integer" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Integer", "intValue", "()I" );
}
else if ( type == long.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Long" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Long", "longValue", "()J" );
}
else if ( type == float.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Float" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Float", "floatValue", "()F" );
}
else if ( type == double.class )
{
mv.visitTypeInsn( CHECKCAST, "java/lang/Double" );
mv.visitMethodInsn( INVOKEVIRTUAL, "java/lang/Double", "doubleValue", "()D" );
}
}