Interface Visitor

All Known Implementing Classes:
EmptyVisitor, ExecutionVisitor, InstConstraintVisitor

public interface Visitor
Interface implementing the Visitor pattern programming style. I.e., a class that implements this interface can handle all types of instructions with the properly typed methods just by calling the accept() method.
  • Method Details

    • visitAALOAD

      void visitAALOAD(AALOAD obj)
      Visits an AALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitAASTORE

      void visitAASTORE(AASTORE obj)
      Visits an AASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitACONST_NULL

      Visits an ACONST_NULL instruction.
      Parameters:
      obj - the instruction.
    • visitAllocationInstruction

      Visits an AllocationInstruction.
      Parameters:
      obj - the instruction.
    • visitALOAD

      void visitALOAD(ALOAD obj)
      Visits an ALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitANEWARRAY

      Visits an ANEWARRAY instruction.
      Parameters:
      obj - the instruction.
    • visitARETURN

      void visitARETURN(ARETURN obj)
      Visits an ARETURN instruction.
      Parameters:
      obj - the instruction.
    • visitArithmeticInstruction

      Visits an ArithmeticInstruction.
      Parameters:
      obj - the instruction.
    • visitArrayInstruction

      Visits an ArrayInstruction.
      Parameters:
      obj - the instruction.
    • visitARRAYLENGTH

      Visits an ARRAYLENGTH instruction.
      Parameters:
      obj - the instruction.
    • visitASTORE

      void visitASTORE(ASTORE obj)
      Visits an ASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitATHROW

      void visitATHROW(ATHROW obj)
      Visits an ATHROW instruction.
      Parameters:
      obj - the instruction.
    • visitBALOAD

      void visitBALOAD(BALOAD obj)
      Visits a BALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitBASTORE

      void visitBASTORE(BASTORE obj)
      Visits a BASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitBIPUSH

      void visitBIPUSH(BIPUSH obj)
      Visits a BIPUSH instruction.
      Parameters:
      obj - the instruction.
    • visitBranchInstruction

      Visits a BranchInstruction.
      Parameters:
      obj - the instruction.
    • visitBREAKPOINT

      Visits a BREAKPOINT instruction.
      Parameters:
      obj - the instruction.
    • visitCALOAD

      void visitCALOAD(CALOAD obj)
      Visits a CALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitCASTORE

      void visitCASTORE(CASTORE obj)
      Visits a CASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitCHECKCAST

      Visits a CHECKCAST instruction.
      Parameters:
      obj - the instruction.
    • visitConstantPushInstruction

      Visits a ConstantPushInstruction.
      Parameters:
      obj - the instruction.
    • visitConversionInstruction

      Visits a ConversionInstruction.
      Parameters:
      obj - the instruction.
    • visitCPInstruction

      Visits a CPInstruction.
      Parameters:
      obj - the instruction.
    • visitD2F

      void visitD2F(D2F obj)
      Visits a D2F instruction.
      Parameters:
      obj - the instruction.
    • visitD2I

      void visitD2I(D2I obj)
      Visits a D2I instruction.
      Parameters:
      obj - the instruction.
    • visitD2L

      void visitD2L(D2L obj)
      Visits a D2L instruction.
      Parameters:
      obj - the instruction.
    • visitDADD

      void visitDADD(DADD obj)
      Visits a DADD instruction.
      Parameters:
      obj - the instruction.
    • visitDALOAD

      void visitDALOAD(DALOAD obj)
      Visits a DALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitDASTORE

      void visitDASTORE(DASTORE obj)
      Visits a DASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitDCMPG

      void visitDCMPG(DCMPG obj)
      Visits a DCMPG instruction.
      Parameters:
      obj - the instruction.
    • visitDCMPL

      void visitDCMPL(DCMPL obj)
      Visits a DCMPL instruction.
      Parameters:
      obj - the instruction.
    • visitDCONST

      void visitDCONST(DCONST obj)
      Visits a DCONST instruction.
      Parameters:
      obj - the instruction.
    • visitDDIV

      void visitDDIV(DDIV obj)
      Visits a DDIV instruction.
      Parameters:
      obj - the instruction.
    • visitDLOAD

      void visitDLOAD(DLOAD obj)
      Visits a DLOAD instruction.
      Parameters:
      obj - the instruction.
    • visitDMUL

      void visitDMUL(DMUL obj)
      Visits a DMUL instruction.
      Parameters:
      obj - the instruction.
    • visitDNEG

      void visitDNEG(DNEG obj)
      Visits a DNEG instruction.
      Parameters:
      obj - the instruction.
    • visitDREM

      void visitDREM(DREM obj)
      Visits a DREM instruction.
      Parameters:
      obj - the instruction.
    • visitDRETURN

      void visitDRETURN(DRETURN obj)
      Visits a DRETURN instruction.
      Parameters:
      obj - the instruction.
    • visitDSTORE

      void visitDSTORE(DSTORE obj)
      Visits a DSTORE instruction.
      Parameters:
      obj - the instruction.
    • visitDSUB

      void visitDSUB(DSUB obj)
      Visits a DSUB instruction.
      Parameters:
      obj - the instruction.
    • visitDUP

      void visitDUP(DUP obj)
      Visits a DUP instruction.
      Parameters:
      obj - the instruction.
    • visitDUP_X1

      void visitDUP_X1(DUP_X1 obj)
      Visits a DUP_X1 instruction.
      Parameters:
      obj - the instruction.
    • visitDUP_X2

      void visitDUP_X2(DUP_X2 obj)
      Visits a DUP_X2 instruction.
      Parameters:
      obj - the instruction.
    • visitDUP2

      void visitDUP2(DUP2 obj)
      Visits a DUP2 instruction.
      Parameters:
      obj - the instruction.
    • visitDUP2_X1

      void visitDUP2_X1(DUP2_X1 obj)
      Visits a DUP2_X1 instruction.
      Parameters:
      obj - the instruction.
    • visitDUP2_X2

      void visitDUP2_X2(DUP2_X2 obj)
      Visits a DUP2_X2 instruction.
      Parameters:
      obj - the instruction.
    • visitExceptionThrower

      Visits an ExceptionThrower.
      Parameters:
      obj - the instruction.
    • visitF2D

      void visitF2D(F2D obj)
      Visits an F2D instruction.
      Parameters:
      obj - the instruction.
    • visitF2I

      void visitF2I(F2I obj)
      Visits an F2I instruction.
      Parameters:
      obj - the instruction.
    • visitF2L

      void visitF2L(F2L obj)
      Visits an F2L instruction.
      Parameters:
      obj - the instruction.
    • visitFADD

      void visitFADD(FADD obj)
      Visits an FADD instruction.
      Parameters:
      obj - the instruction.
    • visitFALOAD

      void visitFALOAD(FALOAD obj)
      Visits an FALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitFASTORE

      void visitFASTORE(FASTORE obj)
      Visits an FASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitFCMPG

      void visitFCMPG(FCMPG obj)
      Visits an FCMPG instruction.
      Parameters:
      obj - the instruction.
    • visitFCMPL

      void visitFCMPL(FCMPL obj)
      Visits an FCMPL instruction.
      Parameters:
      obj - the instruction.
    • visitFCONST

      void visitFCONST(FCONST obj)
      Visits an FCONST instruction.
      Parameters:
      obj - the instruction.
    • visitFDIV

      void visitFDIV(FDIV obj)
      Visits an FDIV instruction.
      Parameters:
      obj - the instruction.
    • visitFieldInstruction

      Visits a FieldInstruction.
      Parameters:
      obj - the instruction.
    • visitFieldOrMethod

      Visits a FieldOrMethod.
      Parameters:
      obj - the instruction.
    • visitFLOAD

      void visitFLOAD(FLOAD obj)
      Visits an FLOAD instruction.
      Parameters:
      obj - the instruction.
    • visitFMUL

      void visitFMUL(FMUL obj)
      Visits an FMUL instruction.
      Parameters:
      obj - the instruction.
    • visitFNEG

      void visitFNEG(FNEG obj)
      Visits an FNEG instruction.
      Parameters:
      obj - the instruction.
    • visitFREM

      void visitFREM(FREM obj)
      Visits an FREM instruction.
      Parameters:
      obj - the instruction.
    • visitFRETURN

      void visitFRETURN(FRETURN obj)
      Visits an FRETURN instruction.
      Parameters:
      obj - the instruction.
    • visitFSTORE

      void visitFSTORE(FSTORE obj)
      Visits an FSTORE instruction.
      Parameters:
      obj - the instruction.
    • visitFSUB

      void visitFSUB(FSUB obj)
      Visits an FSUB instruction.
      Parameters:
      obj - the instruction.
    • visitGETFIELD

      Visits a GETFIELD instruction.
      Parameters:
      obj - the instruction.
    • visitGETSTATIC

      Visits a GETSTATIC instruction.
      Parameters:
      obj - the instruction.
    • visitGOTO

      void visitGOTO(GOTO obj)
      Visits a GOTO instruction.
      Parameters:
      obj - the instruction.
    • visitGOTO_W

      void visitGOTO_W(GOTO_W obj)
      Visits a GOTO_W instruction.
      Parameters:
      obj - the instruction.
    • visitGotoInstruction

      Visits a GotoInstruction.
      Parameters:
      obj - the instruction.
    • visitI2B

      void visitI2B(I2B obj)
      Visits an I2B instruction.
      Parameters:
      obj - the instruction.
    • visitI2C

      void visitI2C(I2C obj)
      Visits an I2C instruction.
      Parameters:
      obj - the instruction.
    • visitI2D

      void visitI2D(I2D obj)
      Visits an I2D instruction.
      Parameters:
      obj - the instruction.
    • visitI2F

      void visitI2F(I2F obj)
      Visits an I2F instruction.
      Parameters:
      obj - the instruction.
    • visitI2L

      void visitI2L(I2L obj)
      Visits an I2L instruction.
      Parameters:
      obj - the instruction.
    • visitI2S

      void visitI2S(I2S obj)
      Visits an I2S instruction.
      Parameters:
      obj - the instruction.
    • visitIADD

      void visitIADD(IADD obj)
      Visits an IADD instruction.
      Parameters:
      obj - the instruction.
    • visitIALOAD

      void visitIALOAD(IALOAD obj)
      Visits an IALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitIAND

      void visitIAND(IAND obj)
      Visits an IAND instruction.
      Parameters:
      obj - the instruction.
    • visitIASTORE

      void visitIASTORE(IASTORE obj)
      Visits an IASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitICONST

      void visitICONST(ICONST obj)
      Visits an ICONST instruction.
      Parameters:
      obj - the instruction.
    • visitIDIV

      void visitIDIV(IDIV obj)
      Visits an IDIV instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ACMPEQ

      Visits an IF_ACMPEQ instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ACMPNE

      Visits an IF_ACMPNE instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ICMPEQ

      Visits an IF_ICMPEQ instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ICMPGE

      Visits an IF_ICMPGE instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ICMPGT

      Visits an IF_ICMPGT instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ICMPLE

      Visits an IF_ICMPLE instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ICMPLT

      Visits an IF_ICMPLT instruction.
      Parameters:
      obj - the instruction.
    • visitIF_ICMPNE

      Visits an IF_ICMPNE instruction.
      Parameters:
      obj - the instruction.
    • visitIFEQ

      void visitIFEQ(IFEQ obj)
      Visits an IFEQ instruction.
      Parameters:
      obj - the instruction.
    • visitIFGE

      void visitIFGE(IFGE obj)
      Visits an IFGE instruction.
      Parameters:
      obj - the instruction.
    • visitIFGT

      void visitIFGT(IFGT obj)
      Visits an IFGT instruction.
      Parameters:
      obj - the instruction.
    • visitIfInstruction

      Visits an IfInstruction.
      Parameters:
      obj - the instruction.
    • visitIFLE

      void visitIFLE(IFLE obj)
      Visits an IFLE instruction.
      Parameters:
      obj - the instruction.
    • visitIFLT

      void visitIFLT(IFLT obj)
      Visits an IFLT instruction.
      Parameters:
      obj - the instruction.
    • visitIFNE

      void visitIFNE(IFNE obj)
      Visits an IFNE instruction.
      Parameters:
      obj - the instruction.
    • visitIFNONNULL

      Visits an IFNONNULL instruction.
      Parameters:
      obj - the instruction.
    • visitIFNULL

      void visitIFNULL(IFNULL obj)
      Visits an IFNULL instruction.
      Parameters:
      obj - the instruction.
    • visitIINC

      void visitIINC(IINC obj)
      Visits an IINC instruction.
      Parameters:
      obj - the instruction.
    • visitILOAD

      void visitILOAD(ILOAD obj)
      Visits an ILOAD instruction.
      Parameters:
      obj - the instruction.
    • visitIMPDEP1

      void visitIMPDEP1(IMPDEP1 obj)
      Visits an IMPDEP1 instruction.
      Parameters:
      obj - the instruction.
    • visitIMPDEP2

      void visitIMPDEP2(IMPDEP2 obj)
      Visits an IMPDEP2 instruction.
      Parameters:
      obj - the instruction.
    • visitIMUL

      void visitIMUL(IMUL obj)
      Visits an IMUL instruction.
      Parameters:
      obj - the instruction.
    • visitINEG

      void visitINEG(INEG obj)
      Visits an INEG instruction.
      Parameters:
      obj - the instruction.
    • visitINSTANCEOF

      Visits an INSTANCEOF instruction.
      Parameters:
      obj - the instruction.
    • visitINVOKEDYNAMIC

      Visits an INVOKEDYNAMIC instruction.
      Parameters:
      obj - the instruction.
      Since:
      6.0
    • visitInvokeInstruction

      Visits an InvokeInstruction.
      Parameters:
      obj - the instruction.
    • visitINVOKEINTERFACE

      Visits an INVOKEINTERFACE instruction.
      Parameters:
      obj - the instruction.
    • visitINVOKESPECIAL

      Visits an INVOKESPECIAL instruction.
      Parameters:
      obj - the instruction.
    • visitINVOKESTATIC

      Visits an INVOKESTATIC instruction.
      Parameters:
      obj - the instruction.
    • visitINVOKEVIRTUAL

      Visits an INVOKEVIRTUAL instruction.
      Parameters:
      obj - the instruction.
    • visitIOR

      void visitIOR(IOR obj)
      Visits an IOR instruction.
      Parameters:
      obj - the instruction.
    • visitIREM

      void visitIREM(IREM obj)
      Visits an IREM instruction.
      Parameters:
      obj - the instruction.
    • visitIRETURN

      void visitIRETURN(IRETURN obj)
      Visits an IRETURN instruction.
      Parameters:
      obj - the instruction.
    • visitISHL

      void visitISHL(ISHL obj)
      Visits an ISHL instruction.
      Parameters:
      obj - the instruction.
    • visitISHR

      void visitISHR(ISHR obj)
      Visits an ISHR instruction.
      Parameters:
      obj - the instruction.
    • visitISTORE

      void visitISTORE(ISTORE obj)
      Visits an ISTORE instruction.
      Parameters:
      obj - the instruction.
    • visitISUB

      void visitISUB(ISUB obj)
      Visits an ISUB instruction.
      Parameters:
      obj - the instruction.
    • visitIUSHR

      void visitIUSHR(IUSHR obj)
      Visits an IUSHR instruction.
      Parameters:
      obj - the instruction.
    • visitIXOR

      void visitIXOR(IXOR obj)
      Visits an IXOR instruction.
      Parameters:
      obj - the instruction.
    • visitJSR

      void visitJSR(JSR obj)
      Visits a JSR instruction.
      Parameters:
      obj - the instruction.
    • visitJSR_W

      void visitJSR_W(JSR_W obj)
      Visits a JSR_W instruction.
      Parameters:
      obj - the instruction.
    • visitJsrInstruction

      Visits a JsrInstruction.
      Parameters:
      obj - the instruction.
    • visitL2D

      void visitL2D(L2D obj)
      Visits an L2D instruction.
      Parameters:
      obj - the instruction.
    • visitL2F

      void visitL2F(L2F obj)
      Visits an L2F instruction.
      Parameters:
      obj - the instruction.
    • visitL2I

      void visitL2I(L2I obj)
      Visits an L2I instruction.
      Parameters:
      obj - the instruction.
    • visitLADD

      void visitLADD(LADD obj)
      Visits an LADD instruction.
      Parameters:
      obj - the instruction.
    • visitLALOAD

      void visitLALOAD(LALOAD obj)
      Visits an LALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitLAND

      void visitLAND(LAND obj)
      Visits an LAND instruction.
      Parameters:
      obj - the instruction.
    • visitLASTORE

      void visitLASTORE(LASTORE obj)
      Visits an LASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitLCMP

      void visitLCMP(LCMP obj)
      Visits an LCMP instruction.
      Parameters:
      obj - the instruction.
    • visitLCONST

      void visitLCONST(LCONST obj)
      Visits an LCONST instruction.
      Parameters:
      obj - the instruction.
    • visitLDC

      void visitLDC(LDC obj)
      Visits an LDC instruction.
      Parameters:
      obj - the instruction.
    • visitLDC2_W

      void visitLDC2_W(LDC2_W obj)
      Visits an LDC2_W instruction.
      Parameters:
      obj - the instruction.
    • visitLDIV

      void visitLDIV(LDIV obj)
      Visits an LDIV instruction.
      Parameters:
      obj - the instruction.
    • visitLLOAD

      void visitLLOAD(LLOAD obj)
      Visits an LLOAD instruction.
      Parameters:
      obj - the instruction.
    • visitLMUL

      void visitLMUL(LMUL obj)
      Visits an LMUL instruction.
      Parameters:
      obj - the instruction.
    • visitLNEG

      void visitLNEG(LNEG obj)
      Visits an LNEG instruction.
      Parameters:
      obj - the instruction.
    • visitLoadClass

      Visits a LoadClass.
      Parameters:
      obj - the load class.
    • visitLoadInstruction

      Visits a LoadInstruction.
      Parameters:
      obj - the instruction.
    • visitLocalVariableInstruction

      Visits a LocalVariableInstruction.
      Parameters:
      obj - the instruction.
    • visitLOOKUPSWITCH

      Visits a LOOKUPSWITCH instruction.
      Parameters:
      obj - the instruction.
    • visitLOR

      void visitLOR(LOR obj)
      Visits an LOR instruction.
      Parameters:
      obj - the instruction.
    • visitLREM

      void visitLREM(LREM obj)
      Visits an LREM instruction.
      Parameters:
      obj - the instruction.
    • visitLRETURN

      void visitLRETURN(LRETURN obj)
      Visits an LRETURN instruction.
      Parameters:
      obj - the instruction.
    • visitLSHL

      void visitLSHL(LSHL obj)
      Visits an LSHL instruction.
      Parameters:
      obj - the instruction.
    • visitLSHR

      void visitLSHR(LSHR obj)
      Visits an LSHR instruction.
      Parameters:
      obj - the instruction.
    • visitLSTORE

      void visitLSTORE(LSTORE obj)
      Visits an LSTORE instruction.
      Parameters:
      obj - the instruction.
    • visitLSUB

      void visitLSUB(LSUB obj)
      Visits an LSUB instruction.
      Parameters:
      obj - the instruction.
    • visitLUSHR

      void visitLUSHR(LUSHR obj)
      Visits an LUSHR instruction.
      Parameters:
      obj - the instruction.
    • visitLXOR

      void visitLXOR(LXOR obj)
      Visits an LXOR instruction.
      Parameters:
      obj - the instruction.
    • visitMONITORENTER

      Visits a MONITORENTER instruction.
      Parameters:
      obj - the instruction.
    • visitMONITOREXIT

      Visits a MONITOREXIT instruction.
      Parameters:
      obj - the instruction.
    • visitMULTIANEWARRAY

      Visits a MULTIANEWARRAY instruction.
      Parameters:
      obj - the instruction.
    • visitNEW

      void visitNEW(NEW obj)
      Visits a NEW instruction.
      Parameters:
      obj - the instruction.
    • visitNEWARRAY

      Visits a NEWARRAY instruction.
      Parameters:
      obj - the instruction.
    • visitNOP

      void visitNOP(NOP obj)
      Visits a NOP instruction.
      Parameters:
      obj - the instruction.
    • visitPOP

      void visitPOP(POP obj)
      Visits a POP instruction.
      Parameters:
      obj - the instruction.
    • visitPOP2

      void visitPOP2(POP2 obj)
      Visits a POP2 instruction.
      Parameters:
      obj - the instruction.
    • visitPopInstruction

      Visits a PopInstruction.
      Parameters:
      obj - the instruction.
    • visitPushInstruction

      Visits a PushInstruction.
      Parameters:
      obj - the instruction.
    • visitPUTFIELD

      Visits a PUTFIELD instruction.
      Parameters:
      obj - the instruction.
    • visitPUTSTATIC

      Visits a PUTSTATIC instruction.
      Parameters:
      obj - the instruction.
    • visitRET

      void visitRET(RET obj)
      Visits a RET instruction.
      Parameters:
      obj - the instruction.
    • visitRETURN

      void visitRETURN(RETURN obj)
      Visits a RETURN instruction.
      Parameters:
      obj - the instruction.
    • visitReturnInstruction

      Visits a ReturnInstruction.
      Parameters:
      obj - the instruction.
    • visitSALOAD

      void visitSALOAD(SALOAD obj)
      Visits a SALOAD instruction.
      Parameters:
      obj - the instruction.
    • visitSASTORE

      void visitSASTORE(SASTORE obj)
      Visits a SASTORE instruction.
      Parameters:
      obj - the instruction.
    • visitSelect

      void visitSelect(Select obj)
      Visits a Select instruction.
      Parameters:
      obj - the instruction.
    • visitSIPUSH

      void visitSIPUSH(SIPUSH obj)
      Visits a SIPUSH instruction.
      Parameters:
      obj - the instruction.
    • visitStackConsumer

      Visits a StackConsumer.
      Parameters:
      obj - the instruction.
    • visitStackInstruction

      Visits a StackInstruction.
      Parameters:
      obj - the instruction.
    • visitStackProducer

      Visits a StackProducer.
      Parameters:
      obj - the instruction.
    • visitStoreInstruction

      Visits a StoreInstruction.
      Parameters:
      obj - the instruction.
    • visitSWAP

      void visitSWAP(SWAP obj)
      Visits a SWAP instruction.
      Parameters:
      obj - the instruction.
    • visitTABLESWITCH

      Visits a TABLESWITCH instruction.
      Parameters:
      obj - the instruction.
    • visitTypedInstruction

      Visits a TypedInstruction.
      Parameters:
      obj - the instruction.
    • visitUnconditionalBranch

      Visits an UnconditionalBranch.
      Parameters:
      obj - the instruction.
    • visitVariableLengthInstruction

      Visits a VariableLengthInstruction.
      Parameters:
      obj - the instruction.