44 interface LiveStackFrame extends StackFrame { 45 /** 46 * Return the monitors held by this stack frame. This method returns 47 * an empty array if no monitor is held by this stack frame. 48 * 49 * @return the monitors held by this stack frames 50 */ 51 public Object[] getMonitors(); 52 53 /** 54 * Gets the local variable array of this stack frame. 55 * 56 * <p>A single local variable can hold a value of type boolean, byte, char, 57 * short, int, float, reference or returnAddress. A pair of local variables 58 * can hold a value of type long or double. In other words, 59 * a value of type long or type double occupies two consecutive local 60 * variables. For a value of primitive type, the element in the 61 * local variable array is an {@link PrimitiveValue} object; 62 * otherwise, the element is an {@code Object}. 63 * 64 * @return the local variable array of this stack frame. 65 */ 66 public Object[] getLocals(); 67 68 /** 69 * Gets the operand stack of this stack frame. 70 * 71 * <p> 72 * The 0-th element of the returned array represents the top of the operand stack. 73 * This method returns an empty array if the operand stack is empty. 74 * 75 * <p>Each entry on the operand stack can hold a value of any Java Virtual 76 * Machine Type. 77 * For a value of primitive type, the element in the returned array is 78 * an {@link PrimitiveValue} object; otherwise, the element is the {@code Object} 79 * on the operand stack. 80 * 81 * @return the operand stack of this stack frame. 82 */ 83 public Object[] getStack(); | 44 interface LiveStackFrame extends StackFrame { 45 /** 46 * Return the monitors held by this stack frame. This method returns 47 * an empty array if no monitor is held by this stack frame. 48 * 49 * @return the monitors held by this stack frames 50 */ 51 public Object[] getMonitors(); 52 53 /** 54 * Gets the local variable array of this stack frame. 55 * 56 * <p>A single local variable can hold a value of type boolean, byte, char, 57 * short, int, float, reference or returnAddress. A pair of local variables 58 * can hold a value of type long or double. In other words, 59 * a value of type long or type double occupies two consecutive local 60 * variables. For a value of primitive type, the element in the 61 * local variable array is an {@link PrimitiveValue} object; 62 * otherwise, the element is an {@code Object}. 63 * 64 * <p>The returned array may contain null entries if a local variable is not 65 * live. 66 * 67 * @return the local variable array of this stack frame. 68 */ 69 public Object[] getLocals(); 70 71 /** 72 * Gets the operand stack of this stack frame. 73 * 74 * <p> 75 * The 0-th element of the returned array represents the top of the operand stack. 76 * This method returns an empty array if the operand stack is empty. 77 * 78 * <p>Each entry on the operand stack can hold a value of any Java Virtual 79 * Machine Type. 80 * For a value of primitive type, the element in the returned array is 81 * an {@link PrimitiveValue} object; otherwise, the element is the {@code Object} 82 * on the operand stack. 83 * 84 * @return the operand stack of this stack frame. 85 */ 86 public Object[] getStack(); |