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 Summary
Modifier and TypeMethodDescriptionvoidvisitAALOAD(AALOAD obj) Visits an AALOAD instruction.voidvisitAASTORE(AASTORE obj) Visits an AASTORE instruction.voidVisits an ACONST_NULL instruction.voidVisits an AllocationInstruction.voidvisitALOAD(ALOAD obj) Visits an ALOAD instruction.voidvisitANEWARRAY(ANEWARRAY obj) Visits an ANEWARRAY instruction.voidvisitARETURN(ARETURN obj) Visits an ARETURN instruction.voidVisits an ArithmeticInstruction.voidVisits an ArrayInstruction.voidVisits an ARRAYLENGTH instruction.voidvisitASTORE(ASTORE obj) Visits an ASTORE instruction.voidvisitATHROW(ATHROW obj) Visits an ATHROW instruction.voidvisitBALOAD(BALOAD obj) Visits a BALOAD instruction.voidvisitBASTORE(BASTORE obj) Visits a BASTORE instruction.voidvisitBIPUSH(BIPUSH obj) Visits a BIPUSH instruction.voidVisits a BranchInstruction.voidVisits a BREAKPOINT instruction.voidvisitCALOAD(CALOAD obj) Visits a CALOAD instruction.voidvisitCASTORE(CASTORE obj) Visits a CASTORE instruction.voidvisitCHECKCAST(CHECKCAST obj) Visits a CHECKCAST instruction.voidVisits a ConstantPushInstruction.voidVisits a ConversionInstruction.voidVisits a CPInstruction.voidVisits a D2F instruction.voidVisits a D2I instruction.voidVisits a D2L instruction.voidVisits a DADD instruction.voidvisitDALOAD(DALOAD obj) Visits a DALOAD instruction.voidvisitDASTORE(DASTORE obj) Visits a DASTORE instruction.voidvisitDCMPG(DCMPG obj) Visits a DCMPG instruction.voidvisitDCMPL(DCMPL obj) Visits a DCMPL instruction.voidvisitDCONST(DCONST obj) Visits a DCONST instruction.voidVisits a DDIV instruction.voidvisitDLOAD(DLOAD obj) Visits a DLOAD instruction.voidVisits a DMUL instruction.voidVisits a DNEG instruction.voidVisits a DREM instruction.voidvisitDRETURN(DRETURN obj) Visits a DRETURN instruction.voidvisitDSTORE(DSTORE obj) Visits a DSTORE instruction.voidVisits a DSUB instruction.voidVisits a DUP instruction.voidvisitDUP_X1(DUP_X1 obj) Visits a DUP_X1 instruction.voidvisitDUP_X2(DUP_X2 obj) Visits a DUP_X2 instruction.voidVisits a DUP2 instruction.voidvisitDUP2_X1(DUP2_X1 obj) Visits a DUP2_X1 instruction.voidvisitDUP2_X2(DUP2_X2 obj) Visits a DUP2_X2 instruction.voidVisits an ExceptionThrower.voidVisits an F2D instruction.voidVisits an F2I instruction.voidVisits an F2L instruction.voidVisits an FADD instruction.voidvisitFALOAD(FALOAD obj) Visits an FALOAD instruction.voidvisitFASTORE(FASTORE obj) Visits an FASTORE instruction.voidvisitFCMPG(FCMPG obj) Visits an FCMPG instruction.voidvisitFCMPL(FCMPL obj) Visits an FCMPL instruction.voidvisitFCONST(FCONST obj) Visits an FCONST instruction.voidVisits an FDIV instruction.voidVisits a FieldInstruction.voidVisits a FieldOrMethod.voidvisitFLOAD(FLOAD obj) Visits an FLOAD instruction.voidVisits an FMUL instruction.voidVisits an FNEG instruction.voidVisits an FREM instruction.voidvisitFRETURN(FRETURN obj) Visits an FRETURN instruction.voidvisitFSTORE(FSTORE obj) Visits an FSTORE instruction.voidVisits an FSUB instruction.voidvisitGETFIELD(GETFIELD obj) Visits a GETFIELD instruction.voidvisitGETSTATIC(GETSTATIC obj) Visits a GETSTATIC instruction.voidVisits a GOTO instruction.voidvisitGOTO_W(GOTO_W obj) Visits a GOTO_W instruction.voidVisits a GotoInstruction.voidVisits an I2B instruction.voidVisits an I2C instruction.voidVisits an I2D instruction.voidVisits an I2F instruction.voidVisits an I2L instruction.voidVisits an I2S instruction.voidVisits an IADD instruction.voidvisitIALOAD(IALOAD obj) Visits an IALOAD instruction.voidVisits an IAND instruction.voidvisitIASTORE(IASTORE obj) Visits an IASTORE instruction.voidvisitICONST(ICONST obj) Visits an ICONST instruction.voidVisits an IDIV instruction.voidvisitIF_ACMPEQ(IF_ACMPEQ obj) Visits an IF_ACMPEQ instruction.voidvisitIF_ACMPNE(IF_ACMPNE obj) Visits an IF_ACMPNE instruction.voidvisitIF_ICMPEQ(IF_ICMPEQ obj) Visits an IF_ICMPEQ instruction.voidvisitIF_ICMPGE(IF_ICMPGE obj) Visits an IF_ICMPGE instruction.voidvisitIF_ICMPGT(IF_ICMPGT obj) Visits an IF_ICMPGT instruction.voidvisitIF_ICMPLE(IF_ICMPLE obj) Visits an IF_ICMPLE instruction.voidvisitIF_ICMPLT(IF_ICMPLT obj) Visits an IF_ICMPLT instruction.voidvisitIF_ICMPNE(IF_ICMPNE obj) Visits an IF_ICMPNE instruction.voidVisits an IFEQ instruction.voidVisits an IFGE instruction.voidVisits an IFGT instruction.voidVisits an IfInstruction.voidVisits an IFLE instruction.voidVisits an IFLT instruction.voidVisits an IFNE instruction.voidvisitIFNONNULL(IFNONNULL obj) Visits an IFNONNULL instruction.voidvisitIFNULL(IFNULL obj) Visits an IFNULL instruction.voidVisits an IINC instruction.voidvisitILOAD(ILOAD obj) Visits an ILOAD instruction.voidvisitIMPDEP1(IMPDEP1 obj) Visits an IMPDEP1 instruction.voidvisitIMPDEP2(IMPDEP2 obj) Visits an IMPDEP2 instruction.voidVisits an IMUL instruction.voidVisits an INEG instruction.voidVisits an INSTANCEOF instruction.voidVisits an INVOKEDYNAMIC instruction.voidVisits an InvokeInstruction.voidVisits an INVOKEINTERFACE instruction.voidVisits an INVOKESPECIAL instruction.voidVisits an INVOKESTATIC instruction.voidVisits an INVOKEVIRTUAL instruction.voidVisits an IOR instruction.voidVisits an IREM instruction.voidvisitIRETURN(IRETURN obj) Visits an IRETURN instruction.voidVisits an ISHL instruction.voidVisits an ISHR instruction.voidvisitISTORE(ISTORE obj) Visits an ISTORE instruction.voidVisits an ISUB instruction.voidvisitIUSHR(IUSHR obj) Visits an IUSHR instruction.voidVisits an IXOR instruction.voidVisits a JSR instruction.voidvisitJSR_W(JSR_W obj) Visits a JSR_W instruction.voidVisits a JsrInstruction.voidVisits an L2D instruction.voidVisits an L2F instruction.voidVisits an L2I instruction.voidVisits an LADD instruction.voidvisitLALOAD(LALOAD obj) Visits an LALOAD instruction.voidVisits an LAND instruction.voidvisitLASTORE(LASTORE obj) Visits an LASTORE instruction.voidVisits an LCMP instruction.voidvisitLCONST(LCONST obj) Visits an LCONST instruction.voidVisits an LDC instruction.voidvisitLDC2_W(LDC2_W obj) Visits an LDC2_W instruction.voidVisits an LDIV instruction.voidvisitLLOAD(LLOAD obj) Visits an LLOAD instruction.voidVisits an LMUL instruction.voidVisits an LNEG instruction.voidvisitLoadClass(LoadClass obj) Visits a LoadClass.voidVisits a LoadInstruction.voidVisits a LocalVariableInstruction.voidVisits a LOOKUPSWITCH instruction.voidVisits an LOR instruction.voidVisits an LREM instruction.voidvisitLRETURN(LRETURN obj) Visits an LRETURN instruction.voidVisits an LSHL instruction.voidVisits an LSHR instruction.voidvisitLSTORE(LSTORE obj) Visits an LSTORE instruction.voidVisits an LSUB instruction.voidvisitLUSHR(LUSHR obj) Visits an LUSHR instruction.voidVisits an LXOR instruction.voidVisits a MONITORENTER instruction.voidVisits a MONITOREXIT instruction.voidVisits a MULTIANEWARRAY instruction.voidVisits a NEW instruction.voidvisitNEWARRAY(NEWARRAY obj) Visits a NEWARRAY instruction.voidVisits a NOP instruction.voidVisits a POP instruction.voidVisits a POP2 instruction.voidVisits a PopInstruction.voidVisits a PushInstruction.voidvisitPUTFIELD(PUTFIELD obj) Visits a PUTFIELD instruction.voidvisitPUTSTATIC(PUTSTATIC obj) Visits a PUTSTATIC instruction.voidVisits a RET instruction.voidvisitRETURN(RETURN obj) Visits a RETURN instruction.voidVisits a ReturnInstruction.voidvisitSALOAD(SALOAD obj) Visits a SALOAD instruction.voidvisitSASTORE(SASTORE obj) Visits a SASTORE instruction.voidvisitSelect(Select obj) Visits a Select instruction.voidvisitSIPUSH(SIPUSH obj) Visits a SIPUSH instruction.voidVisits a StackConsumer.voidVisits a StackInstruction.voidVisits a StackProducer.voidVisits a StoreInstruction.voidVisits a SWAP instruction.voidVisits a TABLESWITCH instruction.voidVisits a TypedInstruction.voidVisits an UnconditionalBranch.voidVisits a VariableLengthInstruction.
-
Method Details
-
visitAALOAD
-
visitAASTORE
-
visitACONST_NULL
Visits an ACONST_NULL instruction.- Parameters:
obj- the instruction.
-
visitAllocationInstruction
Visits an AllocationInstruction.- Parameters:
obj- the instruction.
-
visitALOAD
-
visitANEWARRAY
Visits an ANEWARRAY instruction.- Parameters:
obj- the instruction.
-
visitARETURN
-
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
-
visitATHROW
-
visitBALOAD
-
visitBASTORE
-
visitBIPUSH
-
visitBranchInstruction
Visits a BranchInstruction.- Parameters:
obj- the instruction.
-
visitBREAKPOINT
Visits a BREAKPOINT instruction.- Parameters:
obj- the instruction.
-
visitCALOAD
-
visitCASTORE
-
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
-
visitD2I
-
visitD2L
-
visitDADD
-
visitDALOAD
-
visitDASTORE
-
visitDCMPG
-
visitDCMPL
-
visitDCONST
-
visitDDIV
-
visitDLOAD
-
visitDMUL
-
visitDNEG
-
visitDREM
-
visitDRETURN
-
visitDSTORE
-
visitDSUB
-
visitDUP
-
visitDUP_X1
-
visitDUP_X2
-
visitDUP2
-
visitDUP2_X1
-
visitDUP2_X2
-
visitExceptionThrower
Visits an ExceptionThrower.- Parameters:
obj- the instruction.
-
visitF2D
-
visitF2I
-
visitF2L
-
visitFADD
-
visitFALOAD
-
visitFASTORE
-
visitFCMPG
-
visitFCMPL
-
visitFCONST
-
visitFDIV
-
visitFieldInstruction
Visits a FieldInstruction.- Parameters:
obj- the instruction.
-
visitFieldOrMethod
Visits a FieldOrMethod.- Parameters:
obj- the instruction.
-
visitFLOAD
-
visitFMUL
-
visitFNEG
-
visitFREM
-
visitFRETURN
-
visitFSTORE
-
visitFSUB
-
visitGETFIELD
-
visitGETSTATIC
Visits a GETSTATIC instruction.- Parameters:
obj- the instruction.
-
visitGOTO
-
visitGOTO_W
-
visitGotoInstruction
Visits a GotoInstruction.- Parameters:
obj- the instruction.
-
visitI2B
-
visitI2C
-
visitI2D
-
visitI2F
-
visitI2L
-
visitI2S
-
visitIADD
-
visitIALOAD
-
visitIAND
-
visitIASTORE
-
visitICONST
-
visitIDIV
-
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
-
visitIFGE
-
visitIFGT
-
visitIfInstruction
Visits an IfInstruction.- Parameters:
obj- the instruction.
-
visitIFLE
-
visitIFLT
-
visitIFNE
-
visitIFNONNULL
Visits an IFNONNULL instruction.- Parameters:
obj- the instruction.
-
visitIFNULL
-
visitIINC
-
visitILOAD
-
visitIMPDEP1
-
visitIMPDEP2
-
visitIMUL
-
visitINEG
-
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
-
visitIREM
-
visitIRETURN
-
visitISHL
-
visitISHR
-
visitISTORE
-
visitISUB
-
visitIUSHR
-
visitIXOR
-
visitJSR
-
visitJSR_W
-
visitJsrInstruction
Visits a JsrInstruction.- Parameters:
obj- the instruction.
-
visitL2D
-
visitL2F
-
visitL2I
-
visitLADD
-
visitLALOAD
-
visitLAND
-
visitLASTORE
-
visitLCMP
-
visitLCONST
-
visitLDC
-
visitLDC2_W
-
visitLDIV
-
visitLLOAD
-
visitLMUL
-
visitLNEG
-
visitLoadClass
-
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
-
visitLREM
-
visitLRETURN
-
visitLSHL
-
visitLSHR
-
visitLSTORE
-
visitLSUB
-
visitLUSHR
-
visitLXOR
-
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
-
visitNEWARRAY
-
visitNOP
-
visitPOP
-
visitPOP2
-
visitPopInstruction
Visits a PopInstruction.- Parameters:
obj- the instruction.
-
visitPushInstruction
Visits a PushInstruction.- Parameters:
obj- the instruction.
-
visitPUTFIELD
-
visitPUTSTATIC
Visits a PUTSTATIC instruction.- Parameters:
obj- the instruction.
-
visitRET
-
visitRETURN
-
visitReturnInstruction
Visits a ReturnInstruction.- Parameters:
obj- the instruction.
-
visitSALOAD
-
visitSASTORE
-
visitSelect
-
visitSIPUSH
-
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
-
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.
-