Package | Description |
---|---|
javassist |
The Javassist Core API.
|
javassist.bytecode |
Bytecode-level API.
|
javassist.bytecode.analysis |
Bytecode Analysis API.
|
javassist.bytecode.stackmap | |
javassist.compiler | |
javassist.convert | |
javassist.expr |
This package contains the classes for modifying a method body.
|
javassist.util.proxy |
Dynamic proxy (similar to
Enhancer of cglib). |
Modifier and Type | Field and Description |
---|---|
protected MethodInfo |
CtBehavior.methodInfo |
Modifier and Type | Method and Description |
---|---|
MethodInfo |
CtBehavior.getMethodInfo()
Returns the
MethodInfo representing this method/constructor in the
class file. |
MethodInfo |
CtBehavior.getMethodInfo2()
Returns the
MethodInfo representing the method/constructor in the
class file (read only). |
Modifier and Type | Method and Description |
---|---|
protected void |
CodeConverter.doit(CtClass clazz,
MethodInfo minfo,
ConstPool cp)
Performs code conversion.
|
static CtMethod |
CtMethod.make(MethodInfo minfo,
CtClass declaring)
Creates a method from a
MethodInfo object. |
(package private) static void |
CtBehavior.setBody0(CtClass srcClass,
MethodInfo srcInfo,
CtClass destClass,
MethodInfo destInfo,
ClassMap map) |
(package private) static java.lang.Object[][] |
CtClassType.toAnnotationType(boolean ignoreNotFound,
ClassPool cp,
ParameterAnnotationsAttribute a1,
ParameterAnnotationsAttribute a2,
MethodInfo minfo) |
Constructor and Description |
---|
CtBehavior(CtClass clazz,
MethodInfo minfo) |
CtConstructor(MethodInfo minfo,
CtClass declaring) |
CtMethod(MethodInfo minfo,
CtClass declaring) |
Modifier and Type | Method and Description |
---|---|
MethodInfo |
ClassFile.getMethod(java.lang.String name)
Returns the method with the specified name.
|
MethodInfo |
ClassFile.getStaticInitializer()
Returns a static initializer (class initializer), or null if it does not
exist.
|
Modifier and Type | Method and Description |
---|---|
void |
ClassFile.addMethod(MethodInfo minfo)
Appends a method to the class.
|
void |
ClassFile.addMethod2(MethodInfo minfo)
Just appends a method to the class.
|
private static boolean |
ClassFile.isDuplicated(MethodInfo newMethod,
java.lang.String newName,
java.lang.String newDesc,
MethodInfo minfo,
java.util.ListIterator it) |
private static boolean |
ClassFile.notBridgeMethod(MethodInfo minfo) |
private void |
MethodInfo.read(MethodInfo src,
java.lang.String methodname,
java.util.Map classnames) |
private void |
ClassFile.testExistingMethod(MethodInfo newMinfo) |
Constructor and Description |
---|
BadBytecode(MethodInfo minfo,
java.lang.Throwable cause) |
MethodInfo(ConstPool cp,
java.lang.String methodname,
MethodInfo src,
java.util.Map classnameMap)
Constructs a copy of
method_info structure. |
Modifier and Type | Field and Description |
---|---|
(package private) MethodInfo |
ControlFlow.Block.method |
private MethodInfo |
ControlFlow.methodInfo |
Modifier and Type | Method and Description |
---|---|
Frame[] |
Analyzer.analyze(CtClass clazz,
MethodInfo method)
Performs data-flow analysis on a method and returns an array, indexed by
instruction position, containing the starting frame state of all reachable
instructions.
|
private void |
Analyzer.analyzeNextEntry(MethodInfo method,
CodeIterator iter,
IntQueue queue,
Executor executor) |
private Analyzer.ExceptionInfo[] |
Analyzer.buildExceptionInfo(MethodInfo method) |
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.
|
private Frame |
Analyzer.firstFrame(MethodInfo method,
int maxLocals,
int maxStack) |
private void |
Analyzer.mergeExceptionHandlers(IntQueue queue,
MethodInfo method,
int pos,
Frame frame) |
Subroutine[] |
SubroutineScanner.scan(MethodInfo method) |
Constructor and Description |
---|
Block(int pos,
MethodInfo minfo) |
ControlFlow(CtClass ctclazz,
MethodInfo minfo)
Constructs a control-flow analyzer.
|
Modifier and Type | Method and Description |
---|---|
static StackMapTable |
MapMaker.make(ClassPool classes,
MethodInfo minfo)
Computes the stack map table of the given method and returns it.
|
BasicBlock[] |
BasicBlock.Maker.make(MethodInfo minfo) |
static StackMap |
MapMaker.make2(ClassPool classes,
MethodInfo minfo)
Computes the stack map table for J2ME.
|
static TypedBlock[] |
TypedBlock.makeBlocks(MethodInfo minfo,
CodeAttribute ca,
boolean optimize)
Divides the method body into basic blocks.
|
Constructor and Description |
---|
MapMaker(ClassPool classes,
MethodInfo minfo,
CodeAttribute ca) |
Modifier and Type | Field and Description |
---|---|
MethodInfo |
MemberResolver.Method.info |
protected MethodInfo |
TypeChecker.thisMethod |
protected MethodInfo |
MemberCodeGen.thisMethod |
Modifier and Type | Method and Description |
---|---|
MethodInfo |
AccessorMaker.getFieldGetter(FieldInfo finfo,
boolean is_static)
Returns the method_info representing the added getter.
|
MethodInfo |
AccessorMaker.getFieldSetter(FieldInfo finfo,
boolean is_static)
Returns the method_info representing the added setter.
|
Modifier and Type | Method and Description |
---|---|
protected java.lang.String |
MemberCodeGen.getAccessibleConstructor(java.lang.String desc,
CtClass declClass,
MethodInfo minfo) |
protected java.lang.String |
MemberCodeGen.getAccessiblePrivate(java.lang.String methodName,
java.lang.String desc,
java.lang.String newDesc,
MethodInfo minfo,
CtClass declClass) |
java.lang.String |
AccessorMaker.getConstructor(CtClass c,
java.lang.String desc,
MethodInfo orig) |
java.lang.String |
AccessorMaker.getMethodAccessor(java.lang.String name,
java.lang.String desc,
java.lang.String accDesc,
MethodInfo orig)
Returns the name of the method for accessing a private method.
|
MemberResolver.Method |
MemberResolver.lookupMethod(CtClass clazz,
CtClass currentClass,
MethodInfo current,
java.lang.String methodName,
int[] argTypes,
int[] argDims,
java.lang.String[] argClassNames) |
void |
TypeChecker.setThisMethod(MethodInfo m)
Records the currently compiled method.
|
Constructor and Description |
---|
Method(CtClass c,
MethodInfo i,
int n) |
Modifier and Type | Method and Description |
---|---|
private void |
TransformAccessArrayField.initFrames(CtClass clazz,
MethodInfo minfo) |
void |
Transformer.initialize(ConstPool cp,
CtClass clazz,
MethodInfo minfo) |
void |
TransformAccessArrayField.initialize(ConstPool cp,
CtClass clazz,
MethodInfo minfo) |
Modifier and Type | Field and Description |
---|---|
(package private) MethodInfo |
Expr.thisMethod |
Modifier and Type | Method and Description |
---|---|
boolean |
ExprEditor.doit(CtClass clazz,
MethodInfo minfo)
Undocumented method.
|
(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) |
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.
|
Modifier and Type | Method and Description |
---|---|
private static MethodInfo |
ProxyFactory.makeConstructor(java.lang.String thisClassName,
java.lang.reflect.Constructor cons,
ConstPool cp,
java.lang.Class superClass,
boolean doHandlerInit) |
private static MethodInfo |
ProxyFactory.makeDelegator(java.lang.reflect.Method meth,
java.lang.String desc,
ConstPool cp,
java.lang.Class declClass,
java.lang.String delegatorName) |
private static MethodInfo |
ProxyFactory.makeForwarder(java.lang.String thisClassName,
java.lang.reflect.Method meth,
java.lang.String desc,
ConstPool cp,
java.lang.Class declClass,
java.lang.String delegatorName,
int index,
java.util.ArrayList forwarders) |
private static MethodInfo |
ProxyFactory.makeWriteReplace(ConstPool cp) |
Modifier and Type | Method and Description |
---|---|
private static void |
ProxyFactory.setThrows(MethodInfo minfo,
ConstPool cp,
java.lang.Class[] exceptions) |
private static void |
ProxyFactory.setThrows(MethodInfo minfo,
ConstPool cp,
java.lang.reflect.Method orig) |