public class MethodCall extends Expr
AALOAD, AASTORE, ACONST_NULL, ALOAD, ALOAD_0, ALOAD_1, ALOAD_2, ALOAD_3, ANEWARRAY, ARETURN, ARRAYLENGTH, ASTORE, ASTORE_0, ASTORE_1, ASTORE_2, ASTORE_3, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DLOAD_0, DLOAD_1, DLOAD_2, DLOAD_3, DMUL, DNEG, DREM, DRETURN, DSTORE, DSTORE_0, DSTORE_1, DSTORE_2, DSTORE_3, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAD_0, FLOAD_1, FLOAD_2, FLOAD_3, FMUL, FNEG, FREM, FRETURN, FSTORE, FSTORE_0, FSTORE_1, FSTORE_2, FSTORE_3, FSUB, GETFIELD, GETSTATIC, GOTO, GOTO_W, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, ILOAD_0, ILOAD_1, ILOAD_2, ILOAD_3, IMUL, INEG, INSTANCEOF, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISTORE_0, ISTORE_1, ISTORE_2, ISTORE_3, ISUB, IUSHR, IXOR, JSR, JSR_W, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDC_W, LDC2_W, LDIV, LLOAD, LLOAD_0, LLOAD_1, LLOAD_2, LLOAD_3, LMUL, LNEG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSTORE_0, LSTORE_1, LSTORE_2, LSTORE_3, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, STACK_GROW, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, WIDE
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getClassName()
Returns the class name of the target object,
which the method is called on.
|
java.lang.String |
getFileName()
Returns the source file containing the method call.
|
int |
getLineNumber()
Returns the line number of the source line containing the
method call.
|
CtMethod |
getMethod()
Returns the called method.
|
java.lang.String |
getMethodName()
Returns the name of the called method.
|
java.lang.String |
getSignature()
Returns the method signature (the parameter types
and the return type).
|
boolean |
isSuper()
Returns true if the called method is of a superclass of the current
class.
|
CtClass[] |
mayThrow()
Returns the list of exceptions that the expression may throw.
|
void |
replace(java.lang.String statement)
Replaces the method call with the bytecode derived from
the given source text.
|
CtBehavior |
where()
Returns the method or constructor containing the method-call
expression represented by this object.
|
getEnclosingClass, indexOfBytecode, replace
public CtBehavior where()
public int getLineNumber()
getLineNumber
in class Expr
public java.lang.String getFileName()
getFileName
in class Expr
public java.lang.String getClassName()
public java.lang.String getMethodName()
public CtMethod getMethod() throws NotFoundException
NotFoundException
public java.lang.String getSignature()
CtBehavior.getSignature()
,
Descriptor
public CtClass[] mayThrow()
public boolean isSuper()
public void replace(java.lang.String statement) throws CannotCompileException
$0 is available even if the called method is static.
replace
in class Expr
statement
- a Java statement except try-catch.CannotCompileException
Javassist, a Java-bytecode translator toolkit.
Copyright (C) 1999- Shigeru Chiba. All Rights Reserved.