Package javassist.expr
Class FieldAccess
java.lang.Object
javassist.expr.Expr
javassist.expr.FieldAccess
- All Implemented Interfaces:
Opcode
Expression for accessing a field.
-
Field Summary
Fields inherited from interface javassist.bytecode.Opcode
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 -
Method Summary
Modifier and TypeMethodDescriptionReturns the name of the class in which the field is declared.getField()Returns the field accessed by this expression.Returns the name of the field.Returns the source file containing the field access.intReturns the line number of the source line containing the field access.Returns the signature of the field type.booleanisReader()Returns true if the field is read.booleanisStatic()Returns true if the field is static.booleanisWriter()Returns true if the field is written in.CtClass[]mayThrow()Returns the list of exceptions that the expression may throw.voidReplaces the method call with the bytecode derived from the given source text.where()Returns the method or constructor containing the field-access expression represented by this object.Methods inherited from class javassist.expr.Expr
getEnclosingClass, indexOfBytecode, replace
-
Method Details
-
where
Returns the method or constructor containing the field-access expression represented by this object. -
getLineNumber
public int getLineNumber()Returns the line number of the source line containing the field access.- Overrides:
getLineNumberin classExpr- Returns:
- -1 if this information is not available.
-
getFileName
Returns the source file containing the field access.- Overrides:
getFileNamein classExpr- Returns:
- null if this information is not available.
-
isStatic
public boolean isStatic()Returns true if the field is static. -
isReader
public boolean isReader()Returns true if the field is read. -
isWriter
public boolean isWriter()Returns true if the field is written in. -
getClassName
Returns the name of the class in which the field is declared. -
getFieldName
Returns the name of the field. -
getField
Returns the field accessed by this expression.- Throws:
NotFoundException
-
mayThrow
Returns the list of exceptions that the expression may throw. This list includes both the exceptions that the try-catch statements including the expression can catch and the exceptions that the throws declaration allows the method to throw. -
getSignature
Returns the signature of the field type. The signature is represented by a character string called field descriptor, which is defined in the JVM specification.- Since:
- 3.1
- See Also:
-
replace
Replaces the method call with the bytecode derived from the given source text.$0 is available even if the called method is static. If the field access is writing, $_ is available but the value of $_ is ignored.
- Specified by:
replacein classExpr- Parameters:
statement- a Java statement except try-catch.- Throws:
CannotCompileException
-