1 /*
2 * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package com.sun.jdi;
27
28 import com.sun.jdi.event.ModificationWatchpointEvent;
29
30 /**
31 * The mirror for a value in the target VM.
32 * This interface is the root of a
33 * value hierarchy encompassing primitive values and object values.
34 * <P>
35 * Some examples of where values may be accessed:
36 * <BLOCKQUOTE><TABLE role="presentation">
37 * <TR>
38 * <TD>{@link ObjectReference#getValue(Field)
39 * ObjectReference.getValue(Field)}
40 * <TD>- value of a field
41 * <TR>
42 * <TD>{@link StackFrame#getValue(LocalVariable)
43 * StackFrame.getValue(LocalVariable)}
44 * <TD>- value of a variable
45 * <TR>
46 * <TD>{@link VirtualMachine#mirrorOf(double)
47 * VirtualMachine.mirrorOf(double)}
48 * <TD>- created in the target VM by the JDI client
49 * <TR>
50 * <TD>{@link ModificationWatchpointEvent#valueToBe()
51 * ModificationWatchpointEvent.valueToBe()}
52 * <TD>- returned with an event
53 * </TABLE></BLOCKQUOTE>
|
1 /*
2 * Copyright (c) 1998, 2026, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package com.sun.jdi;
27
28 import com.sun.jdi.event.ModificationWatchpointEvent;
29
30 /**
31 * The mirror for a value in the target VM.
32 * This interface is the root of a
33 * value hierarchy encompassing primitive values and object values.
34 * <div class="preview-block">
35 * <div class="preview-comment">
36 * When preview features are enabled, JDI supports value classes. A "value class"
37 * as supported in the Java language is not related to the JDI Value interface.
38 * A "value class" is a class declared with the "value" modifier. The JDI
39 * Value interface is used by JDI to mirror a value in the debuggee VM. For more
40 * information on value classes, see Section {@jls value-objects-8.1.1.5 Value Classes}
41 * of <cite>The Java Language Specification</cite>.
42 * </div>
43 * </div>
44 * <P>
45 * Some examples of where values may be accessed:
46 * <BLOCKQUOTE><TABLE role="presentation">
47 * <TR>
48 * <TD>{@link ObjectReference#getValue(Field)
49 * ObjectReference.getValue(Field)}
50 * <TD>- value of a field
51 * <TR>
52 * <TD>{@link StackFrame#getValue(LocalVariable)
53 * StackFrame.getValue(LocalVariable)}
54 * <TD>- value of a variable
55 * <TR>
56 * <TD>{@link VirtualMachine#mirrorOf(double)
57 * VirtualMachine.mirrorOf(double)}
58 * <TD>- created in the target VM by the JDI client
59 * <TR>
60 * <TD>{@link ModificationWatchpointEvent#valueToBe()
61 * ModificationWatchpointEvent.valueToBe()}
62 * <TD>- returned with an event
63 * </TABLE></BLOCKQUOTE>
|