Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Compil3r.BytecodeAnalysis
Class Trimmer.TrimmerVisitor  view Trimmer.TrimmerVisitor download Trimmer.TrimmerVisitor.java

java.lang.Object
  extended byCompil3r.BytecodeAnalysis.BytecodeVisitor
      extended byCompil3r.BytecodeAnalysis.Trimmer.TrimmerVisitor
All Implemented Interfaces:
Clazz.jq_ClassFileConstants
Enclosing class:
Trimmer

class Trimmer.TrimmerVisitor
extends BytecodeVisitor


Field Summary
 
Fields inherited from class Compil3r.BytecodeAnalysis.BytecodeVisitor
bcs, BINOP_ADD, BINOP_AND, BINOP_DIV, BINOP_MUL, BINOP_OR, BINOP_REM, BINOP_SUB, BINOP_XOR, binopnames, clazz, CMP_AE, CMP_EQ, CMP_G, CMP_GE, CMP_GT, CMP_L, CMP_LE, CMP_LT, CMP_NE, CMP_UNCOND, cmpopnames, fcmpopnames, i_end, i_start, INVOKE_INTERFACE, INVOKE_SPECIAL, INVOKE_STATIC, INVOKE_VIRTUAL, invokeopnames, method, MONITOR_ENTER, MONITOR_EXIT, monitoropnames, out, SHIFT_LEFT, SHIFT_RIGHT, SHIFT_URIGHT, shiftopnames, TRACE, UNOP_NEG, unopnames
 
Fields inherited from interface Clazz.jq_ClassFileConstants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, CONSTANT_Class, CONSTANT_Double, CONSTANT_FieldRef, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodRef, CONSTANT_Long, CONSTANT_MethodRef, CONSTANT_NameAndType, CONSTANT_ResolvedClass, CONSTANT_ResolvedIFieldRef, CONSTANT_ResolvedIMethodRef, CONSTANT_ResolvedSFieldRef, CONSTANT_ResolvedSMethodRef, CONSTANT_String, CONSTANT_Utf8, CONSUME_STACK, ILLEGAL_OPCODE, ILLEGAL_TYPE, jbc_AALOAD, jbc_AASTORE, jbc_ACONST_NULL, jbc_ALOAD, jbc_ALOAD_0, jbc_ALOAD_1, jbc_ALOAD_2, jbc_ALOAD_3, jbc_ANEWARRAY, jbc_ARETURN, jbc_ARRAYLENGTH, jbc_ASTORE, jbc_ASTORE_0, jbc_ASTORE_1, jbc_ASTORE_2, jbc_ASTORE_3, jbc_ATHROW, jbc_BALOAD, jbc_BASTORE, jbc_BIPUSH, jbc_BREAKPOINT, jbc_CALOAD, jbc_CASTORE, jbc_CHECKCAST, jbc_D2F, jbc_D2I, jbc_D2L, jbc_DADD, jbc_DALOAD, jbc_DASTORE, jbc_DCMPG, jbc_DCMPL, jbc_DCONST_0, jbc_DCONST_1, jbc_DDIV, jbc_DLOAD, jbc_DLOAD_0, jbc_DLOAD_1, jbc_DLOAD_2, jbc_DLOAD_3, jbc_DMUL, jbc_DNEG, jbc_DREM, jbc_DRETURN, jbc_DSTORE, jbc_DSTORE_0, jbc_DSTORE_1, jbc_DSTORE_2, jbc_DSTORE_3, jbc_DSUB, jbc_DUP, jbc_DUP_X1, jbc_DUP_X2, jbc_DUP2, jbc_DUP2_X1, jbc_DUP2_X2, jbc_F2D, jbc_F2I, jbc_F2L, jbc_FADD, jbc_FALOAD, jbc_FASTORE, jbc_FCMPG, jbc_FCMPL, jbc_FCONST_0, jbc_FCONST_1, jbc_FCONST_2, jbc_FDIV, jbc_FLOAD, jbc_FLOAD_0, jbc_FLOAD_1, jbc_FLOAD_2, jbc_FLOAD_3, jbc_FMUL, jbc_FNEG, jbc_FREM, jbc_FRETURN, jbc_FSTORE, jbc_FSTORE_0, jbc_FSTORE_1, jbc_FSTORE_2, jbc_FSTORE_3, jbc_FSUB, jbc_GETFIELD, jbc_GETSTATIC, jbc_GOTO, jbc_GOTO_W, jbc_I2B, jbc_I2C, jbc_I2D, jbc_I2F, jbc_I2L, jbc_I2S, jbc_IADD, jbc_IALOAD, jbc_IAND, jbc_IASTORE, jbc_ICONST_0, jbc_ICONST_1, jbc_ICONST_2, jbc_ICONST_3, jbc_ICONST_4, jbc_ICONST_5, jbc_ICONST_M1, jbc_IDIV, jbc_IF_ACMPEQ, jbc_IF_ACMPNE, jbc_IF_ICMPEQ, jbc_IF_ICMPGE, jbc_IF_ICMPGT, jbc_IF_ICMPLE, jbc_IF_ICMPLT, jbc_IF_ICMPNE, jbc_IFEQ, jbc_IFGE, jbc_IFGT, jbc_IFLE, jbc_IFLT, jbc_IFNE, jbc_IFNONNULL, jbc_IFNULL, jbc_IINC, jbc_ILOAD, jbc_ILOAD_0, jbc_ILOAD_1, jbc_ILOAD_2, jbc_ILOAD_3, jbc_IMUL, jbc_INEG, jbc_INSTANCEOF, jbc_INT2BYTE, jbc_INT2CHAR, jbc_INT2SHORT, jbc_INVOKEINTERFACE, jbc_INVOKENONVIRTUAL, jbc_INVOKESPECIAL, jbc_INVOKESTATIC, jbc_INVOKEVIRTUAL, jbc_IOR, jbc_IREM, jbc_IRETURN, jbc_ISHL, jbc_ISHR, jbc_ISTORE, jbc_ISTORE_0, jbc_ISTORE_1, jbc_ISTORE_2, jbc_ISTORE_3, jbc_ISUB, jbc_IUSHR, jbc_IXOR, jbc_JSR, jbc_JSR_W, jbc_L2D, jbc_L2F, jbc_L2I, jbc_LADD, jbc_LALOAD, jbc_LAND, jbc_LASTORE, jbc_LCMP, jbc_LCONST_0, jbc_LCONST_1, jbc_LDC, jbc_LDC_W, jbc_LDC2_W, jbc_LDIV, jbc_LLOAD, jbc_LLOAD_0, jbc_LLOAD_1, jbc_LLOAD_2, jbc_LLOAD_3, jbc_LMUL, jbc_LNEG, jbc_LOOKUPSWITCH, jbc_LOR, jbc_LREM, jbc_LRETURN, jbc_LSHL, jbc_LSHR, jbc_LSTORE, jbc_LSTORE_0, jbc_LSTORE_1, jbc_LSTORE_2, jbc_LSTORE_3, jbc_LSUB, jbc_LUSHR, jbc_LXOR, jbc_MONITORENTER, jbc_MONITOREXIT, jbc_MULTIANEWARRAY, jbc_NEW, jbc_NEWARRAY, jbc_NOP, jbc_POP, jbc_POP2, jbc_PUTFIELD, jbc_PUTSTATIC, jbc_RET, jbc_RETURN, jbc_SALOAD, jbc_SASTORE, jbc_SIPUSH, jbc_SWAP, jbc_TABLESWITCH, jbc_WIDE, NO_OF_OPERANDS, OPCODE_NAMES, PRODUCE_STACK, RESERVED, STATE_CLSINITERROR, STATE_CLSINITIALIZED, STATE_CLSINITIALIZING, STATE_CLSINITRUNNING, STATE_COMPILED, STATE_COMPILING, STATE_LOADED, STATE_LOADERROR, STATE_LOADING1, STATE_LOADING2, STATE_LOADING3, STATE_PREPARED, STATE_PREPARING, STATE_SFINITIALIZED, STATE_SFINITIALIZING, STATE_UNLOADED, STATE_VERIFIED, STATE_VERIFYING, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TC_ARRAY, TC_BOOLEAN, TC_BYTE, TC_CHAR, TC_CLASS, TC_CLASSEND, TC_DOUBLE, TC_FLOAT, TC_INT, TC_LONG, TC_PARAM, TC_PARAMEND, TC_SHORT, TC_VOID, TYPE_OF_OPERANDS, UNDEFINED, UNPREDICTABLE
 
Constructor Summary
(package private) Trimmer.TrimmerVisitor(Clazz.jq_Method method)
           
 
Method Summary
 void forwardTraversal()
           
private  void GETFIELDhelper(Clazz.jq_InstanceField f)
           
private  void GETSTATIChelper(Clazz.jq_StaticField f)
           
private  void INVOKEhelper(byte op, Clazz.jq_Method f)
           
private  void PUTSTATIChelper(Clazz.jq_StaticField f)
           
 java.lang.String toString()
          Convert this Object to a human-readable String.
 void visitAASTORE()
           
 void visitAGETFIELD(Clazz.jq_InstanceField f)
           
 void visitAGETSTATIC(Clazz.jq_StaticField f)
           
 void visitAINVOKE(byte op, Clazz.jq_Method f)
           
 void visitAPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitAPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitATHROW()
           
 void visitBGETFIELD(Clazz.jq_InstanceField f)
           
 void visitBGETSTATIC(Clazz.jq_StaticField f)
           
 void visitBPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitBPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitBytecode()
           
 void visitCGETFIELD(Clazz.jq_InstanceField f)
           
 void visitCGETSTATIC(Clazz.jq_StaticField f)
           
 void visitCHECKCAST(Clazz.jq_Type f)
           
 void visitCPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitCPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitD2I()
           
 void visitD2L()
           
 void visitDGETFIELD(Clazz.jq_InstanceField f)
           
 void visitDGETSTATIC(Clazz.jq_StaticField f)
           
 void visitDINVOKE(byte op, Clazz.jq_Method f)
           
 void visitDPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitDPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitF2I()
           
 void visitF2L()
           
 void visitFGETFIELD(Clazz.jq_InstanceField f)
           
 void visitFGETSTATIC(Clazz.jq_StaticField f)
           
 void visitFINVOKE(byte op, Clazz.jq_Method f)
           
 void visitFPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitFPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitIGETFIELD(Clazz.jq_InstanceField f)
           
 void visitIGETSTATIC(Clazz.jq_StaticField f)
           
 void visitIINVOKE(byte op, Clazz.jq_Method f)
           
 void visitINSTANCEOF(Clazz.jq_Type f)
           
 void visitIPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitIPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitLBINOP(byte op)
           
 void visitLGETFIELD(Clazz.jq_InstanceField f)
           
 void visitLGETSTATIC(Clazz.jq_StaticField f)
           
 void visitLINVOKE(byte op, Clazz.jq_Method f)
           
 void visitLPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitLPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitMONITOR(byte op)
           
 void visitMULTINEWARRAY(Clazz.jq_Type f, char dim)
           
 void visitNEW(Clazz.jq_Type f)
           
 void visitNEWARRAY(Clazz.jq_Array f)
           
 void visitSGETFIELD(Clazz.jq_InstanceField f)
           
 void visitSGETSTATIC(Clazz.jq_StaticField f)
           
 void visitSPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitSPUTSTATIC(Clazz.jq_StaticField f)
           
 void visitVINVOKE(byte op, Clazz.jq_Method f)
           
 void visitZGETFIELD(Clazz.jq_InstanceField f)
           
 void visitZGETSTATIC(Clazz.jq_StaticField f)
           
 void visitZPUTFIELD(Clazz.jq_InstanceField f)
           
 void visitZPUTSTATIC(Clazz.jq_StaticField f)
           
 
Methods inherited from class Compil3r.BytecodeAnalysis.BytecodeVisitor
resolve, resolve, resolve, resolve, resolve, updateCPIndex, updateMemberReference, visitAALOAD, visitACONST, visitALOAD, visitARETURN, visitARRAYLENGTH, visitASTORE, visitBALOAD, visitBASTORE, visitCALOAD, visitCASTORE, visitD2F, visitDALOAD, visitDASTORE, visitDBINOP, visitDCMP2, visitDCONST, visitDLOAD, visitDRETURN, visitDSTORE, visitDUNOP, visitDUP_x1, visitDUP_x2, visitDUP, visitDUP2_x1, visitDUP2_x2, visitDUP2, visitF2D, visitFALOAD, visitFASTORE, visitFBINOP, visitFCMP2, visitFCONST, visitFLOAD, visitFRETURN, visitFSTORE, visitFUNOP, visitGOTO, visitI2B, visitI2C, visitI2D, visitI2F, visitI2L, visitI2S, visitIALOAD, visitIASTORE, visitIBINOP, visitICONST, visitIF, visitIFCMP, visitIFREF, visitIFREFCMP, visitIINC, visitILOAD, visitIRETURN, visitISHIFT, visitISTORE, visitIUNOP, visitJSR, visitL2D, visitL2F, visitL2I, visitLALOAD, visitLASTORE, visitLCMP2, visitLCONST, visitLLOAD, visitLOOKUPSWITCH, visitLRETURN, visitLSHIFT, visitLSTORE, visitLUNOP, visitNOP, visitPEI, visitPOP, visitPOP2, visitRET, visitSALOAD, visitSASTORE, visitSWAP, visitTABLESWITCH, visitVRETURN
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Trimmer.TrimmerVisitor

Trimmer.TrimmerVisitor(Clazz.jq_Method method)
Method Detail

toString

public java.lang.String toString()
Description copied from class: java.lang.Object
Convert this Object to a human-readable String. There are no limits placed on how long this String should be or what it should contain. We suggest you make it as intuitive as possible to be able to place it into System.out.println() 55 and such.

It is typical, but not required, to ensure that this method never completes abruptly with a java.lang.RuntimeException.

This method will be called when performing string concatenation with this object. If the result is null, string concatenation will instead use "null".

The default implementation returns getClass().getName() + "@" + Integer.toHexString(hashCode()).


forwardTraversal

public void forwardTraversal()
                      throws java.lang.VerifyError
Overrides:
forwardTraversal in class BytecodeVisitor

visitBytecode

public void visitBytecode()
                   throws java.lang.VerifyError
Overrides:
visitBytecode in class BytecodeVisitor

visitAASTORE

public void visitAASTORE()
Overrides:
visitAASTORE in class BytecodeVisitor

visitLBINOP

public void visitLBINOP(byte op)
Overrides:
visitLBINOP in class BytecodeVisitor

visitF2I

public void visitF2I()
Overrides:
visitF2I in class BytecodeVisitor

visitD2I

public void visitD2I()
Overrides:
visitD2I in class BytecodeVisitor

visitF2L

public void visitF2L()
Overrides:
visitF2L in class BytecodeVisitor

visitD2L

public void visitD2L()
Overrides:
visitD2L in class BytecodeVisitor

GETSTATIChelper

private void GETSTATIChelper(Clazz.jq_StaticField f)

visitIGETSTATIC

public void visitIGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitIGETSTATIC in class BytecodeVisitor

visitLGETSTATIC

public void visitLGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitLGETSTATIC in class BytecodeVisitor

visitFGETSTATIC

public void visitFGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitFGETSTATIC in class BytecodeVisitor

visitDGETSTATIC

public void visitDGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitDGETSTATIC in class BytecodeVisitor

visitAGETSTATIC

public void visitAGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitAGETSTATIC in class BytecodeVisitor

visitZGETSTATIC

public void visitZGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitZGETSTATIC in class BytecodeVisitor

visitBGETSTATIC

public void visitBGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitBGETSTATIC in class BytecodeVisitor

visitCGETSTATIC

public void visitCGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitCGETSTATIC in class BytecodeVisitor

visitSGETSTATIC

public void visitSGETSTATIC(Clazz.jq_StaticField f)
Overrides:
visitSGETSTATIC in class BytecodeVisitor

PUTSTATIChelper

private void PUTSTATIChelper(Clazz.jq_StaticField f)

visitIPUTSTATIC

public void visitIPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitIPUTSTATIC in class BytecodeVisitor

visitLPUTSTATIC

public void visitLPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitLPUTSTATIC in class BytecodeVisitor

visitFPUTSTATIC

public void visitFPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitFPUTSTATIC in class BytecodeVisitor

visitDPUTSTATIC

public void visitDPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitDPUTSTATIC in class BytecodeVisitor

visitAPUTSTATIC

public void visitAPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitAPUTSTATIC in class BytecodeVisitor

visitZPUTSTATIC

public void visitZPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitZPUTSTATIC in class BytecodeVisitor

visitBPUTSTATIC

public void visitBPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitBPUTSTATIC in class BytecodeVisitor

visitCPUTSTATIC

public void visitCPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitCPUTSTATIC in class BytecodeVisitor

visitSPUTSTATIC

public void visitSPUTSTATIC(Clazz.jq_StaticField f)
Overrides:
visitSPUTSTATIC in class BytecodeVisitor

GETFIELDhelper

private void GETFIELDhelper(Clazz.jq_InstanceField f)

visitIGETFIELD

public void visitIGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitIGETFIELD in class BytecodeVisitor

visitLGETFIELD

public void visitLGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitLGETFIELD in class BytecodeVisitor

visitFGETFIELD

public void visitFGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitFGETFIELD in class BytecodeVisitor

visitDGETFIELD

public void visitDGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitDGETFIELD in class BytecodeVisitor

visitAGETFIELD

public void visitAGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitAGETFIELD in class BytecodeVisitor

visitBGETFIELD

public void visitBGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitBGETFIELD in class BytecodeVisitor

visitCGETFIELD

public void visitCGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitCGETFIELD in class BytecodeVisitor

visitSGETFIELD

public void visitSGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitSGETFIELD in class BytecodeVisitor

visitZGETFIELD

public void visitZGETFIELD(Clazz.jq_InstanceField f)
Overrides:
visitZGETFIELD in class BytecodeVisitor

visitIPUTFIELD

public void visitIPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitIPUTFIELD in class BytecodeVisitor

visitLPUTFIELD

public void visitLPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitLPUTFIELD in class BytecodeVisitor

visitFPUTFIELD

public void visitFPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitFPUTFIELD in class BytecodeVisitor

visitDPUTFIELD

public void visitDPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitDPUTFIELD in class BytecodeVisitor

visitAPUTFIELD

public void visitAPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitAPUTFIELD in class BytecodeVisitor

visitBPUTFIELD

public void visitBPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitBPUTFIELD in class BytecodeVisitor

visitCPUTFIELD

public void visitCPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitCPUTFIELD in class BytecodeVisitor

visitSPUTFIELD

public void visitSPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitSPUTFIELD in class BytecodeVisitor

visitZPUTFIELD

public void visitZPUTFIELD(Clazz.jq_InstanceField f)
Overrides:
visitZPUTFIELD in class BytecodeVisitor

INVOKEhelper

private void INVOKEhelper(byte op,
                          Clazz.jq_Method f)

visitIINVOKE

public void visitIINVOKE(byte op,
                         Clazz.jq_Method f)
Overrides:
visitIINVOKE in class BytecodeVisitor

visitLINVOKE

public void visitLINVOKE(byte op,
                         Clazz.jq_Method f)
Overrides:
visitLINVOKE in class BytecodeVisitor

visitFINVOKE

public void visitFINVOKE(byte op,
                         Clazz.jq_Method f)
Overrides:
visitFINVOKE in class BytecodeVisitor

visitDINVOKE

public void visitDINVOKE(byte op,
                         Clazz.jq_Method f)
Overrides:
visitDINVOKE in class BytecodeVisitor

visitAINVOKE

public void visitAINVOKE(byte op,
                         Clazz.jq_Method f)
Overrides:
visitAINVOKE in class BytecodeVisitor

visitVINVOKE

public void visitVINVOKE(byte op,
                         Clazz.jq_Method f)
Overrides:
visitVINVOKE in class BytecodeVisitor

visitNEW

public void visitNEW(Clazz.jq_Type f)
Overrides:
visitNEW in class BytecodeVisitor

visitNEWARRAY

public void visitNEWARRAY(Clazz.jq_Array f)
Overrides:
visitNEWARRAY in class BytecodeVisitor

visitATHROW

public void visitATHROW()
Overrides:
visitATHROW in class BytecodeVisitor

visitCHECKCAST

public void visitCHECKCAST(Clazz.jq_Type f)
Overrides:
visitCHECKCAST in class BytecodeVisitor

visitINSTANCEOF

public void visitINSTANCEOF(Clazz.jq_Type f)
Overrides:
visitINSTANCEOF in class BytecodeVisitor

visitMONITOR

public void visitMONITOR(byte op)
Overrides:
visitMONITOR in class BytecodeVisitor

visitMULTINEWARRAY

public void visitMULTINEWARRAY(Clazz.jq_Type f,
                               char dim)
Overrides:
visitMULTINEWARRAY in class BytecodeVisitor