Package | Description |
---|---|
javassist |
The Javassist Core API.
|
javassist.bytecode |
Bytecode-level API.
|
javassist.bytecode.analysis |
Bytecode Analysis API.
|
javassist.bytecode.stackmap | |
javassist.convert | |
javassist.expr |
This package contains the classes for modifying a method body.
|
Modifier and Type | Method and Description |
---|---|
private void |
CtBehavior.insertGoto(CodeIterator iterator,
int subr,
int pos) |
Modifier and Type | Method and Description |
---|---|
CodeIterator |
CodeAttribute.iterator()
Makes a new iterator for reading this code attribute.
|
Modifier and Type | Method and Description |
---|---|
private int |
CodeAnalyzer.getFieldSize(CodeIterator ci,
int index) |
static java.lang.String |
InstructionPrinter.instructionString(CodeIterator iter,
int pos,
ConstPool pool)
Gets a string representation of the bytecode instruction at the specified
position.
|
private static java.lang.String |
InstructionPrinter.lookupSwitch(CodeIterator iter,
int pos) |
private boolean |
CodeAnalyzer.processBranch(int opcode,
CodeIterator ci,
int index,
int codeLength,
int[] stack,
int stackDepth,
int[] jsrDepth) |
private static void |
CodeAttribute.shiftIndex(CodeIterator ci,
int lessThan,
int delta) |
private static void |
CodeAttribute.shiftIndex0(CodeIterator ci,
int index,
int opcode,
int lessThan,
int delta,
int opcode_i_0,
int opcode_i) |
private static void |
CodeAttribute.shiftIndex8(CodeIterator ci,
int index,
int opcode,
int lessThan,
int delta) |
private static java.lang.String |
InstructionPrinter.tableSwitch(CodeIterator iter,
int pos) |
private void |
CodeAnalyzer.visitBytecode(CodeIterator ci,
int[] stack,
int index) |
private int |
CodeAnalyzer.visitInst(int op,
CodeIterator ci,
int index,
int stack)
Visits an instruction.
|
private static java.lang.String |
InstructionPrinter.wide(CodeIterator iter,
int pos) |
Modifier and Type | Method and Description |
---|---|
private void |
Analyzer.analyzeNextEntry(MethodInfo method,
CodeIterator iter,
IntQueue queue,
Executor executor) |
private void |
Executor.evalNewArray(int pos,
CodeIterator iter,
Frame frame) |
private void |
Executor.evalNewObjectArray(int pos,
CodeIterator iter,
Frame frame) |
private void |
Executor.evalWide(int pos,
CodeIterator iter,
Frame frame,
Subroutine subroutine) |
void |
Executor.execute(MethodInfo method,
int pos,
CodeIterator iter,
Frame frame,
Subroutine subroutine)
Execute the instruction, modeling the effects on the specified frame and subroutine.
|
static int |
Util.getJumpTarget(int pos,
CodeIterator iter) |
private int |
Analyzer.getNext(CodeIterator iter,
int of,
int restore) |
private int |
Analyzer.lookAhead(CodeIterator iter,
int pos) |
private void |
Analyzer.mergeLookupSwitch(IntQueue queue,
int pos,
CodeIterator iter,
Frame frame) |
private void |
Analyzer.mergeRet(IntQueue queue,
CodeIterator iter,
int pos,
Frame frame,
Subroutine subroutine) |
private void |
Analyzer.mergeTableSwitch(IntQueue queue,
int pos,
CodeIterator iter,
Frame frame) |
private void |
SubroutineScanner.scan(int pos,
CodeIterator iter,
Subroutine sub) |
private void |
SubroutineScanner.scanLookupSwitch(int pos,
CodeIterator iter,
Subroutine sub) |
private boolean |
SubroutineScanner.scanOp(int pos,
CodeIterator iter,
Subroutine sub) |
private void |
SubroutineScanner.scanTableSwitch(int pos,
CodeIterator iter,
Subroutine sub) |
Modifier and Type | Method and Description |
---|---|
BasicBlock[] |
BasicBlock.Maker.make(CodeIterator ci,
int begin,
int end,
ExceptionTable et) |
private java.util.HashMap |
BasicBlock.Maker.makeMarks(CodeIterator ci,
int begin,
int end,
ExceptionTable et) |
Modifier and Type | Method and Description |
---|---|
protected int |
TransformCall.match(int c,
int pos,
CodeIterator iterator,
int typedesc,
ConstPool cp) |
protected int |
TransformBefore.match(int c,
int pos,
CodeIterator iterator,
int typedesc,
ConstPool cp) |
protected int |
TransformAfter.match2(int pos,
CodeIterator iterator) |
protected int |
TransformBefore.match2(int pos,
CodeIterator iterator) |
private int |
TransformAccessArrayField.replace(ConstPool cp,
CodeIterator iterator,
int pos,
int opcode,
java.lang.String signature) |
int |
TransformNew.transform(CtClass clazz,
int pos,
CodeIterator iterator,
ConstPool cp)
Replace a sequence of
NEW classname
DUP
...
|
int |
TransformNewClass.transform(CtClass clazz,
int pos,
CodeIterator iterator,
ConstPool cp)
Modifies a sequence of
NEW classname
DUP
...
|
abstract int |
Transformer.transform(CtClass clazz,
int pos,
CodeIterator it,
ConstPool cp) |
int |
TransformCall.transform(CtClass clazz,
int pos,
CodeIterator iterator,
ConstPool cp)
Modify INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC and INVOKEVIRTUAL
so that a different method is invoked.
|
int |
TransformReadField.transform(CtClass tclazz,
int pos,
CodeIterator iterator,
ConstPool cp) |
int |
TransformFieldAccess.transform(CtClass clazz,
int pos,
CodeIterator iterator,
ConstPool cp)
Modify GETFIELD, GETSTATIC, PUTFIELD, and PUTSTATIC so that
a different field is accessed.
|
int |
TransformWriteField.transform(CtClass tclazz,
int pos,
CodeIterator iterator,
ConstPool cp) |
int |
TransformAccessArrayField.transform(CtClass tclazz,
int pos,
CodeIterator iterator,
ConstPool cp) |
Modifier and Type | Field and Description |
---|---|
(package private) CodeIterator |
Expr.iterator |
Modifier and Type | Method and Description |
---|---|
(package private) boolean |
ExprEditor.doit(CtClass clazz,
MethodInfo minfo,
ExprEditor.LoopContext context,
CodeIterator iterator,
int endPos)
Visits each bytecode in the given range.
|
(package private) boolean |
ExprEditor.loopBody(CodeIterator iterator,
CtClass clazz,
MethodInfo minfo,
ExprEditor.LoopContext context) |
protected void |
Expr.runEditor(ExprEditor ed,
CodeIterator oldIterator) |
Constructor and Description |
---|
Cast(int pos,
CodeIterator i,
CtClass declaring,
MethodInfo m)
Undocumented constructor.
|
ConstructorCall(int pos,
CodeIterator i,
CtClass decl,
MethodInfo m)
Undocumented constructor.
|
Expr(int pos,
CodeIterator i,
CtClass declaring,
MethodInfo m)
Undocumented constructor.
|
FieldAccess(int pos,
CodeIterator i,
CtClass declaring,
MethodInfo m,
int op) |
Handler(ExceptionTable et,
int nth,
CodeIterator it,
CtClass declaring,
MethodInfo m)
Undocumented constructor.
|
Instanceof(int pos,
CodeIterator i,
CtClass declaring,
MethodInfo m)
Undocumented constructor.
|
MethodCall(int pos,
CodeIterator i,
CtClass declaring,
MethodInfo m)
Undocumented constructor.
|
NewArray(int pos,
CodeIterator i,
CtClass declaring,
MethodInfo m,
int op) |
NewExpr(int pos,
CodeIterator i,
CtClass declaring,
MethodInfo m,
java.lang.String type,
int np)
Undocumented constructor.
|