ValueImpl getValue()

in core/src/main/java/com/jetbrains/sa/jdi/FieldImpl.java [64:90]


    ValueImpl getValue(Oop target) {
        ValueImpl valueImpl;
        Field saField = ref();
        FieldType ft = saField.getFieldType();
        if (ft.isOop()) {
            valueImpl = vm().objectMirror(((OopField)saField).getValueAsOopHandle(target));
        } else if (ft.isByte()) {
            valueImpl = vm().mirrorOf(((ByteField)saField).getValue(target));
        } else if (ft.isChar()) {
            valueImpl = vm().mirrorOf(((CharField)saField).getValue(target));
        } else if (ft.isDouble()) {
            valueImpl = vm().mirrorOf(((DoubleField)saField).getValue(target));
        } else if (ft.isFloat()) {
            valueImpl = vm().mirrorOf(((FloatField)saField).getValue(target));
        } else if (ft.isInt()) {
            valueImpl = vm().mirrorOf(((IntField)saField).getValue(target));
        } else if (ft.isLong()) {
            valueImpl = vm().mirrorOf(((LongField)saField).getValue(target));
        } else if (ft.isShort()) {
            valueImpl = vm().mirrorOf(((ShortField)saField).getValue(target));
        } else if (ft.isBoolean()) {
            valueImpl = vm().mirrorOf(((BooleanField)saField).getValue(target));
        } else {
            throw new RuntimeException("Should not reach here");
        }
        return valueImpl;
    }