Class NewClassRefForm


  • public class NewClassRefForm
    extends ClassRefForm
    This class is an extension of the ClassRefForm. It has two purposes: 1. To keep track of the last type used in a new() instruction in the current class. 2. To allow the sender to create instances of either a specified class (which then becomes the new class) or the last used new class.
    • Constructor Detail

      • NewClassRefForm

        public NewClassRefForm​(int opcode,
                               java.lang.String name,
                               int[] rewrite)
    • Method Detail

      • setByteCodeOperands

        public void setByteCodeOperands​(ByteCode byteCode,
                                        OperandManager operandManager,
                                        int codeLength)
        Description copied from class: ByteCodeForm
        When passed a byteCode, an OperandTable and a SegmentConstantPool, this method will set the rewrite of the byteCode appropriately.
        Overrides:
        setByteCodeOperands in class ReferenceForm
        Parameters:
        byteCode - ByteCode to be updated (!)
        operandManager - OperandTable from which to draw info
        codeLength - Length of bytes (excluding this bytecode) from the beginning of the method. Used in calculating padding for some variable-length bytecodes (such as lookupswitch, tableswitch).