javassist.compiler
Class JvstTypeChecker

java.lang.Object
  extended by javassist.compiler.ast.Visitor
      extended by javassist.compiler.TypeChecker
          extended by javassist.compiler.JvstTypeChecker
All Implemented Interfaces:
Opcode, TokenId

public class JvstTypeChecker
extends TypeChecker


Field Summary
 
Fields inherited from class javassist.compiler.TypeChecker
arrayDim, className, exprType, resolver, thisClass, thisMethod
 
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
 
Constructor Summary
JvstTypeChecker(CtClass cc, ClassPool cp, JvstCodeGen gen)
           
 
Method Summary
 void addNullIfVoid()
           
 void atCallExpr(CallExpr expr)
           
 void atCastExpr(CastExpr expr)
           
protected  void atCastToRtype(CastExpr expr)
          Inserts a cast operator to the return type.
protected  void atCastToWrapper(CastExpr expr)
           
protected  void atCflow(ASTList cname)
           
protected  void atFieldAssign(Expr expr, int op, ASTree left, ASTree right)
           
 void atMember(Member mem)
           
 void atMethodArgs(ASTList args, int[] types, int[] dims, java.lang.String[] cnames)
           
protected  void compileUnwrapValue(CtClass type)
           
 int getMethodArgsLength(ASTList args)
           
 boolean isParamListName(ASTList args)
           
 void setType(CtClass type)
           
 
Methods inherited from class javassist.compiler.TypeChecker
argTypesToString, atArrayInit, atArrayLength, atArrayRead, atAssignExpr, atBinExpr, atClassObject, atCondExpr, atDoubleConst, atExpr, atFieldPlusPlus, atInstanceOfExpr, atIntConst, atKeyword, atMethodCallCore, atMultiNewArray, atNewArrayExpr, atNewExpr, atStringL, atVariable, fatal, fieldAccess, getConstantFieldValue, getSuperName, getThisName, resolveClassName, resolveClassName, setThisMethod, typeToString
 
Methods inherited from class javassist.compiler.ast.Visitor
atASTList, atDeclarator, atFieldDecl, atMethodDecl, atPair, atStmnt, atSymbol
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JvstTypeChecker

public JvstTypeChecker(CtClass cc,
                       ClassPool cp,
                       JvstCodeGen gen)
Method Detail

addNullIfVoid

public void addNullIfVoid()

atMember

public void atMember(Member mem)
              throws CompileError
Overrides:
atMember in class TypeChecker
Throws:
CompileError

atFieldAssign

protected void atFieldAssign(Expr expr,
                             int op,
                             ASTree left,
                             ASTree right)
                      throws CompileError
Overrides:
atFieldAssign in class TypeChecker
Throws:
CompileError

atCastExpr

public void atCastExpr(CastExpr expr)
                throws CompileError
Overrides:
atCastExpr in class TypeChecker
Throws:
CompileError

atCastToRtype

protected void atCastToRtype(CastExpr expr)
                      throws CompileError
Inserts a cast operator to the return type. If the return type is void, this does nothing.

Throws:
CompileError

atCastToWrapper

protected void atCastToWrapper(CastExpr expr)
                        throws CompileError
Throws:
CompileError

atCallExpr

public void atCallExpr(CallExpr expr)
                throws CompileError
Overrides:
atCallExpr in class TypeChecker
Throws:
CompileError

atCflow

protected void atCflow(ASTList cname)
                throws CompileError
Throws:
CompileError

isParamListName

public boolean isParamListName(ASTList args)

getMethodArgsLength

public int getMethodArgsLength(ASTList args)
Overrides:
getMethodArgsLength in class TypeChecker

atMethodArgs

public void atMethodArgs(ASTList args,
                         int[] types,
                         int[] dims,
                         java.lang.String[] cnames)
                  throws CompileError
Overrides:
atMethodArgs in class TypeChecker
Throws:
CompileError

compileUnwrapValue

protected void compileUnwrapValue(CtClass type)
                           throws CompileError
Throws:
CompileError

setType

public void setType(CtClass type)
             throws CompileError
Throws:
CompileError


Copyright © 2011. All Rights Reserved.