Package org.apache.bcel.util
Class BCELFactory
java.lang.Object
org.apache.bcel.generic.EmptyVisitor
org.apache.bcel.util.BCELFactory
- All Implemented Interfaces:
Visitor
Factory creates il.append() statements, and sets instruction targets. A helper class for BCELifier.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List
<BranchInstruction> private final Map
<Instruction, InstructionHandle> private static final String
private final ConstantPoolGen
private final MethodGen
private final PrintWriter
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
createConstant
(Object value) void
start()
private void
private void
void
void
void
void
void
void
void
private boolean
void
void
void
void
void
void
Methods inherited from class org.apache.bcel.generic.EmptyVisitor
visitAALOAD, visitAASTORE, visitACONST_NULL, visitALOAD, visitANEWARRAY, visitARETURN, visitArithmeticInstruction, visitARRAYLENGTH, visitASTORE, visitATHROW, visitBALOAD, visitBASTORE, visitBIPUSH, visitBREAKPOINT, visitCALOAD, visitCASTORE, visitConversionInstruction, visitCPInstruction, 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, visitF2D, visitF2I, visitF2L, visitFADD, visitFALOAD, visitFASTORE, visitFCMPG, visitFCMPL, visitFCONST, visitFDIV, visitFieldOrMethod, visitFLOAD, visitFMUL, visitFNEG, visitFREM, visitFRETURN, visitFSTORE, visitFSUB, visitGETFIELD, visitGETSTATIC, visitGOTO, visitGOTO_W, visitGotoInstruction, visitI2B, visitI2C, visitI2D, visitI2F, visitI2L, visitI2S, visitIADD, visitIALOAD, visitIAND, visitIASTORE, visitICONST, visitIDIV, visitIF_ACMPEQ, visitIF_ACMPNE, visitIF_ICMPEQ, visitIF_ICMPGE, visitIF_ICMPGT, visitIF_ICMPLE, visitIF_ICMPLT, visitIF_ICMPNE, visitIFEQ, visitIFGE, visitIFGT, visitIfInstruction, visitIFLE, visitIFLT, visitIFNE, visitIFNONNULL, visitIFNULL, visitIINC, visitILOAD, visitIMPDEP1, visitIMPDEP2, visitIMUL, visitINEG, visitINVOKEDYNAMIC, visitINVOKEINTERFACE, visitINVOKESPECIAL, visitINVOKESTATIC, visitINVOKEVIRTUAL, visitIOR, visitIREM, visitIRETURN, visitISHL, visitISHR, visitISTORE, visitISUB, visitIUSHR, visitIXOR, visitJSR, visitJSR_W, visitJsrInstruction, visitL2D, visitL2F, visitL2I, visitLADD, visitLALOAD, visitLAND, visitLASTORE, visitLCMP, visitLCONST, visitLDIV, visitLLOAD, visitLMUL, visitLNEG, visitLoadClass, visitLoadInstruction, visitLOOKUPSWITCH, visitLOR, visitLREM, visitLRETURN, visitLSHL, visitLSHR, visitLSTORE, visitLSUB, visitLUSHR, visitLXOR, visitMONITORENTER, visitMONITOREXIT, visitMULTIANEWARRAY, visitNEW, visitNEWARRAY, visitNOP, visitPOP, visitPOP2, visitPopInstruction, visitPushInstruction, visitPUTFIELD, visitPUTSTATIC, visitRETURN, visitSALOAD, visitSASTORE, visitSelect, visitSIPUSH, visitStackConsumer, visitStackInstruction, visitStackProducer, visitStoreInstruction, visitSWAP, visitTABLESWITCH, visitTypedInstruction, visitUnconditionalBranch, visitVariableLengthInstruction
-
Field Details
-
CONSTANT_PREFIX
-
methodGen
-
printWriter
-
constantPoolGen
-
branchMap
-
branches
-
-
Constructor Details
-
BCELFactory
BCELFactory(MethodGen mg, PrintWriter out)
-
-
Method Details
-
createConstant
-
start
public void start() -
updateBranchTargets
private void updateBranchTargets() -
updateExceptionHandlers
private void updateExceptionHandlers() -
visitAllocationInstruction
- Specified by:
visitAllocationInstruction
in interfaceVisitor
- Overrides:
visitAllocationInstruction
in classEmptyVisitor
-
visitArrayInstruction
- Specified by:
visitArrayInstruction
in interfaceVisitor
- Overrides:
visitArrayInstruction
in classEmptyVisitor
-
visitBranchInstruction
- Specified by:
visitBranchInstruction
in interfaceVisitor
- Overrides:
visitBranchInstruction
in classEmptyVisitor
-
visitCHECKCAST
- Specified by:
visitCHECKCAST
in interfaceVisitor
- Overrides:
visitCHECKCAST
in classEmptyVisitor
-
visitConstantPushInstruction
- Specified by:
visitConstantPushInstruction
in interfaceVisitor
- Overrides:
visitConstantPushInstruction
in classEmptyVisitor
-
visitFieldInstruction
- Specified by:
visitFieldInstruction
in interfaceVisitor
- Overrides:
visitFieldInstruction
in classEmptyVisitor
-
visitINSTANCEOF
- Specified by:
visitINSTANCEOF
in interfaceVisitor
- Overrides:
visitINSTANCEOF
in classEmptyVisitor
-
visitInstruction
-
visitInvokeInstruction
- Specified by:
visitInvokeInstruction
in interfaceVisitor
- Overrides:
visitInvokeInstruction
in classEmptyVisitor
-
visitLDC
- Specified by:
visitLDC
in interfaceVisitor
- Overrides:
visitLDC
in classEmptyVisitor
-
visitLDC2_W
- Specified by:
visitLDC2_W
in interfaceVisitor
- Overrides:
visitLDC2_W
in classEmptyVisitor
-
visitLocalVariableInstruction
- Specified by:
visitLocalVariableInstruction
in interfaceVisitor
- Overrides:
visitLocalVariableInstruction
in classEmptyVisitor
-
visitRET
- Specified by:
visitRET
in interfaceVisitor
- Overrides:
visitRET
in classEmptyVisitor
-
visitReturnInstruction
- Specified by:
visitReturnInstruction
in interfaceVisitor
- Overrides:
visitReturnInstruction
in classEmptyVisitor
-