private void visitPropertyAccessorValueRead()

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 );
    }