javassist.compiler
Class MemberCodeGen
java.lang.Object
javassist.compiler.ast.Visitor
javassist.compiler.CodeGen
javassist.compiler.MemberCodeGen
- All Implemented Interfaces:
- Opcode, TokenId
- Direct Known Subclasses:
- JvstCodeGen
public class MemberCodeGen
- extends CodeGen
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, 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 |
Fields inherited from interface javassist.compiler.TokenId |
ABSTRACT, AND_E, ANDAND, ARRAY, ARSHIFT, ARSHIFT_E, assignOps, BadToken, BLOCK, BOOLEAN, BREAK, BYTE, CALL, CASE, CATCH, CHAR, CharConstant, CLASS, CONST, CONTINUE, DECL, DEFAULT, DIV_E, DO, DOUBLE, DoubleConstant, ELSE, EQ, EXOR_E, EXPR, EXTENDS, FALSE, FINAL, FINALLY, FLOAT, FloatConstant, FOR, GE, GOTO, Identifier, IF, IMPLEMENTS, IMPORT, INSTANCEOF, INT, IntConstant, INTERFACE, LABEL, LE, LONG, LongConstant, LSHIFT, LSHIFT_E, MEMBER, MINUS_E, MINUSMINUS, MOD_E, MUL_E, NATIVE, NEQ, NEW, NULL, opNames, OR_E, OROR, PACKAGE, PLUS_E, PLUSPLUS, PRIVATE, PROTECTED, PUBLIC, RETURN, RSHIFT, RSHIFT_E, SHORT, STATIC, STRICT, StringL, SUPER, SWITCH, SYNCHRONIZED, THIS, THROW, THROWS, TRANSIENT, TRUE, TRY, VOID, VOLATILE, WHILE |
Method Summary |
void |
atArrayInit(ArrayInit init)
|
protected void |
atArrayVariableAssign(ArrayInit init,
int varType,
int varArray,
java.lang.String varClass)
|
void |
atCallExpr(CallExpr expr)
|
protected void |
atClassObject2(java.lang.String cname)
|
protected void |
atFieldAssign(Expr expr,
int op,
ASTree left,
ASTree right,
boolean doDup)
|
protected void |
atFieldPlusPlus(int token,
boolean isPost,
ASTree oprand,
Expr expr,
boolean doDup)
|
protected void |
atFieldRead(ASTree expr)
|
void |
atMember(Member mem)
|
void |
atMethodArgs(ASTList args,
int[] types,
int[] dims,
java.lang.String[] cnames)
|
void |
atMethodCallCore(CtClass targetClass,
java.lang.String mname,
ASTList args,
boolean isStatic,
boolean isSpecial,
int aload0pos,
MemberResolver.Method found)
|
protected void |
atMultiNewArray(int type,
ASTList classname,
ASTList size)
|
void |
atNewArrayExpr(NewExpr expr)
|
void |
atNewExpr(NewExpr expr)
|
protected void |
atTryStmnt(Stmnt st)
|
protected CtField |
fieldAccess(ASTree expr,
boolean acceptLength)
|
protected java.lang.String |
getAccessibleConstructor(java.lang.String desc,
CtClass declClass,
MethodInfo minfo)
|
protected java.lang.String |
getAccessiblePrivate(java.lang.String methodName,
java.lang.String desc,
java.lang.String newDesc,
MethodInfo minfo,
CtClass declClass)
|
int |
getMajorVersion()
Returns the major version of the class file
targeted by this compilation. |
int |
getMethodArgsLength(ASTList args)
|
protected java.lang.String |
getSuperName()
Returns the JVM-internal representation of this super class name. |
CtClass |
getThisClass()
|
protected java.lang.String |
getThisName()
Returns the JVM-internal representation of this class name. |
protected void |
insertDefaultSuperCall()
|
CtClass[] |
makeParamList(MethodDecl md)
|
CtClass[] |
makeThrowsList(MethodDecl md)
|
protected java.lang.String |
resolveClassName(ASTList name)
|
protected java.lang.String |
resolveClassName(java.lang.String jvmName)
|
void |
setThisMethod(CtMethod m)
Records the currently compiled method. |
Methods inherited from class javassist.compiler.CodeGen |
arrayAccess, atArrayPlusPlus, atArrayRead, atAssignCore, atAssignExpr, atAssignExpr, atASTList, atBinExpr, atCastExpr, atClassObject, atCondExpr, atDeclarator, atDoubleConst, atExpr, atFieldDecl, atInstanceOfExpr, atIntConst, atKeyword, atMethodBody, atMethodDecl, atPair, atPlusPlusCore, atReturnStmnt, atReturnStmnt2, atStmnt, atStringL, atSymbol, atVariable, badAssign, badType, badTypes, compileBooleanExpr, compileExpr, doTypeCheck, fatal, getArrayReadOp, getArrayWriteOp, getLocalVar, getMaxLocals, getTempVar, incMaxLocals, is2word, isRefType, patchGoto, setMaxLocals, setTypeChecker, toJvmArrayName, toJvmTypeName |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
resolver
protected MemberResolver resolver
thisClass
protected CtClass thisClass
thisMethod
protected MethodInfo thisMethod
resultStatic
protected boolean resultStatic
MemberCodeGen
public MemberCodeGen(Bytecode b,
CtClass cc,
ClassPool cp)
getMajorVersion
public int getMajorVersion()
- Returns the major version of the class file
targeted by this compilation.
setThisMethod
public void setThisMethod(CtMethod m)
- Records the currently compiled method.
getThisClass
public CtClass getThisClass()
getThisName
protected java.lang.String getThisName()
- Returns the JVM-internal representation of this class name.
- Specified by:
getThisName
in class CodeGen
getSuperName
protected java.lang.String getSuperName()
throws CompileError
- Returns the JVM-internal representation of this super class name.
- Specified by:
getSuperName
in class CodeGen
- Throws:
CompileError
insertDefaultSuperCall
protected void insertDefaultSuperCall()
throws CompileError
- Specified by:
insertDefaultSuperCall
in class CodeGen
- Throws:
CompileError
atTryStmnt
protected void atTryStmnt(Stmnt st)
throws CompileError
- Overrides:
atTryStmnt
in class CodeGen
- Throws:
CompileError
atNewExpr
public void atNewExpr(NewExpr expr)
throws CompileError
- Specified by:
atNewExpr
in class CodeGen
- Throws:
CompileError
atNewArrayExpr
public void atNewArrayExpr(NewExpr expr)
throws CompileError
- Throws:
CompileError
atArrayVariableAssign
protected void atArrayVariableAssign(ArrayInit init,
int varType,
int varArray,
java.lang.String varClass)
throws CompileError
- Specified by:
atArrayVariableAssign
in class CodeGen
- Throws:
CompileError
atArrayInit
public void atArrayInit(ArrayInit init)
throws CompileError
- Specified by:
atArrayInit
in class CodeGen
- Throws:
CompileError
atMultiNewArray
protected void atMultiNewArray(int type,
ASTList classname,
ASTList size)
throws CompileError
- Throws:
CompileError
atCallExpr
public void atCallExpr(CallExpr expr)
throws CompileError
- Specified by:
atCallExpr
in class CodeGen
- Throws:
CompileError
atMethodCallCore
public void atMethodCallCore(CtClass targetClass,
java.lang.String mname,
ASTList args,
boolean isStatic,
boolean isSpecial,
int aload0pos,
MemberResolver.Method found)
throws CompileError
- Throws:
CompileError
getAccessiblePrivate
protected java.lang.String getAccessiblePrivate(java.lang.String methodName,
java.lang.String desc,
java.lang.String newDesc,
MethodInfo minfo,
CtClass declClass)
throws CompileError
- Throws:
CompileError
getAccessibleConstructor
protected java.lang.String getAccessibleConstructor(java.lang.String desc,
CtClass declClass,
MethodInfo minfo)
throws CompileError
- Throws:
CompileError
getMethodArgsLength
public int getMethodArgsLength(ASTList args)
atMethodArgs
public void atMethodArgs(ASTList args,
int[] types,
int[] dims,
java.lang.String[] cnames)
throws CompileError
- Throws:
CompileError
atFieldAssign
protected void atFieldAssign(Expr expr,
int op,
ASTree left,
ASTree right,
boolean doDup)
throws CompileError
- Specified by:
atFieldAssign
in class CodeGen
- Throws:
CompileError
atMember
public void atMember(Member mem)
throws CompileError
- Specified by:
atMember
in class CodeGen
- Throws:
CompileError
atFieldRead
protected void atFieldRead(ASTree expr)
throws CompileError
- Specified by:
atFieldRead
in class CodeGen
- Throws:
CompileError
atClassObject2
protected void atClassObject2(java.lang.String cname)
throws CompileError
- Overrides:
atClassObject2
in class CodeGen
- Throws:
CompileError
atFieldPlusPlus
protected void atFieldPlusPlus(int token,
boolean isPost,
ASTree oprand,
Expr expr,
boolean doDup)
throws CompileError
- Specified by:
atFieldPlusPlus
in class CodeGen
- Throws:
CompileError
fieldAccess
protected CtField fieldAccess(ASTree expr,
boolean acceptLength)
throws CompileError
- Throws:
CompileError
makeParamList
public CtClass[] makeParamList(MethodDecl md)
throws CompileError
- Throws:
CompileError
makeThrowsList
public CtClass[] makeThrowsList(MethodDecl md)
throws CompileError
- Throws:
CompileError
resolveClassName
protected java.lang.String resolveClassName(ASTList name)
throws CompileError
- Specified by:
resolveClassName
in class CodeGen
- Throws:
CompileError
resolveClassName
protected java.lang.String resolveClassName(java.lang.String jvmName)
throws CompileError
- Specified by:
resolveClassName
in class CodeGen
- Throws:
CompileError
Copyright © 2011. All Rights Reserved.