|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.umd.cs.findbugs.visitclass.BetterVisitor
edu.umd.cs.findbugs.visitclass.PreorderVisitor
public abstract class PreorderVisitor
Interface to make the use of a visitor pattern programming style possible. I.e. a class that implements this interface can traverse the contents of a Java class just by calling the `accept' method which all classes have.
Implemented by wish of Boris Bokowski. If don't like it, blame him. If you do like it thank me 8-)
Field Summary | |
---|---|
private java.lang.String |
className
|
private org.apache.bcel.classfile.ConstantPool |
constantPool
|
private java.lang.String |
dottedClassName
|
private java.lang.String |
dottedFieldSig
|
private java.lang.String |
dottedMethodSig
|
private java.lang.String |
dottedSuperclassName
|
private boolean |
fieldIsStatic
|
private java.lang.String |
fieldName
|
private java.lang.String |
fieldSig
|
private java.lang.String |
fullyQualifiedFieldName
|
private java.lang.String |
fullyQualifiedMethodName
|
private org.apache.bcel.classfile.Method |
method
|
private java.lang.String |
methodName
|
private java.lang.String |
methodSig
|
private java.lang.String |
packageName
|
private java.lang.String |
sourceFile
|
private java.lang.String |
superclassName
|
private org.apache.bcel.classfile.JavaClass |
thisClass
|
private boolean |
visitingField
|
private boolean |
visitingMethod
|
Fields inherited from interface org.apache.bcel.Constants |
---|
AALOAD, AASTORE, 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, ACCESS_NAMES, ACONST_NULL, ALOAD, ALOAD_0, ALOAD_1, ALOAD_2, ALOAD_3, ANEWARRAY, ANEWARRAY_QUICK, ARETURN, ARRAYLENGTH, ASTORE, ASTORE_0, ASTORE_1, ASTORE_2, ASTORE_3, ATHROW, ATTR_CODE, ATTR_CONSTANT_VALUE, ATTR_DEPRECATED, ATTR_EXCEPTIONS, ATTR_INNER_CLASSES, ATTR_LINE_NUMBER_TABLE, ATTR_LOCAL_VARIABLE_TABLE, ATTR_PMG, ATTR_SIGNATURE, ATTR_SOURCE_FILE, ATTR_STACK_MAP, ATTR_SYNTHETIC, ATTR_UNKNOWN, ATTRIBUTE_NAMES, BALOAD, BASTORE, BIPUSH, BREAKPOINT, CALOAD, CASTORE, CHECKCAST, CHECKCAST_QUICK, CLASS_TYPE_NAMES, CONSTANT_Class, CONSTANT_Double, CONSTANT_Fieldref, CONSTANT_Float, CONSTANT_Integer, CONSTANT_InterfaceMethodref, CONSTANT_Long, CONSTANT_Methodref, CONSTANT_NameAndType, CONSTANT_NAMES, CONSTANT_String, CONSTANT_Utf8, CONSTRUCTOR_NAME, CONSUME_STACK, 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, GETFIELD_QUICK, GETFIELD_QUICK_W, GETFIELD2_QUICK, GETSTATIC, GETSTATIC_QUICK, GETSTATIC2_QUICK, 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, ILLEGAL_OPCODE, ILLEGAL_TYPE, ILOAD, ILOAD_0, ILOAD_1, ILOAD_2, ILOAD_3, IMPDEP1, IMPDEP2, IMUL, INEG, INSTANCEOF, INSTANCEOF_QUICK, INT2BYTE, INT2CHAR, INT2SHORT, INTERFACES_IMPLEMENTED_BY_ARRAYS, INVOKEINTERFACE, INVOKEINTERFACE_QUICK, INVOKENONVIRTUAL, INVOKENONVIRTUAL_QUICK, INVOKESPECIAL, INVOKESTATIC, INVOKESTATIC_QUICK, INVOKESUPER_QUICK, INVOKEVIRTUAL, INVOKEVIRTUAL_QUICK, INVOKEVIRTUAL_QUICK_W, INVOKEVIRTUALOBJECT_QUICK, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISTORE_0, ISTORE_1, ISTORE_2, ISTORE_3, ISUB, ITEM_Bogus, ITEM_Double, ITEM_Float, ITEM_InitObject, ITEM_Integer, ITEM_Long, ITEM_NAMES, ITEM_NewObject, ITEM_Null, ITEM_Object, IUSHR, IXOR, JSR, JSR_W, KNOWN_ATTRIBUTES, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDC_QUICK, LDC_W, LDC_W_QUICK, LDC2_W, LDC2_W_QUICK, 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, MAJOR, MAJOR_1_1, MAJOR_1_2, MAJOR_1_3, MAX_ACC_FLAG, MAX_BYTE, MAX_CODE_SIZE, MAX_CP_ENTRIES, MAX_SHORT, MINOR, MINOR_1_1, MINOR_1_2, MINOR_1_3, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, MULTIANEWARRAY_QUICK, NEW, NEW_QUICK, NEWARRAY, NO_OF_OPERANDS, NOP, OPCODE_NAMES, POP, POP2, PRODUCE_STACK, PUSH, PUTFIELD, PUTFIELD_QUICK, PUTFIELD_QUICK_W, PUTFIELD2_QUICK, PUTSTATIC, PUTSTATIC_QUICK, PUTSTATIC2_QUICK, RESERVED, RET, RETURN, SALOAD, SASTORE, SHORT_TYPE_NAMES, SIPUSH, STATIC_INITIALIZER_NAME, SWAP, SWITCH, T_ADDRESS, T_ARRAY, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_OBJECT, T_REFERENCE, T_SHORT, T_UNKNOWN, T_VOID, TABLESWITCH, TYPE_NAMES, TYPE_OF_OPERANDS, UNDEFINED, UNPREDICTABLE, WIDE |
Constructor Summary | |
---|---|
PreorderVisitor()
|
Method Summary | |
---|---|
protected int |
asUnsignedByte(byte b)
|
private void |
doVisitField(org.apache.bcel.classfile.Field field)
|
private void |
doVisitMethod(org.apache.bcel.classfile.Method method)
|
java.lang.String |
getClassName()
Get the slash-formatted class name for the current or most recently visited class |
org.apache.bcel.classfile.ConstantPool |
getConstantPool()
Get the constant pool for the current or most recently visited class |
java.lang.String |
getDottedClassName()
Get the dotted class name for the current or most recently visited class |
java.lang.String |
getDottedFieldSig()
If currently visiting a field, get the field's dot-formatted signature |
java.lang.String |
getDottedMethodSig()
If currently visiting a method, get the method's dotted method signature |
java.lang.String |
getDottedSuperclassName()
Get the dotted superclass name for the current or most recently visited class |
boolean |
getFieldIsStatic()
If currently visiting a field, return whether or not the field is static |
java.lang.String |
getFieldName()
If currently visiting a field, get the field's name |
java.lang.String |
getFieldSig()
If currently visiting a field, get the field's slash-formatted signature |
java.lang.String |
getFullyQualifiedFieldName()
If currently visiting a field, get the field's fully qualified name |
java.lang.String |
getFullyQualifiedMethodName()
If currently visiting a method, get the method's fully qualified name |
org.apache.bcel.classfile.Method |
getMethod()
If currently visiting a method, get the method's Method object |
java.lang.String |
getMethodName()
If currently visiting a method, get the method's name |
java.lang.String |
getMethodSig()
If currently visiting a method, get the method's slash-formatted signature |
java.lang.String |
getPackageName()
Get the (slash-formatted?) package name for the current or most recently visited class |
java.lang.String |
getSourceFile()
Get the source file name for the current or most recently visited class |
protected java.lang.String |
getStringFromIndex(int i)
|
java.lang.String |
getSuperclassName()
Get the slash-formatted superclass name for the current or most recently visited class |
org.apache.bcel.classfile.JavaClass |
getThisClass()
Get the JavaClass object for the current or most recently visited class |
void |
visitAfter(org.apache.bcel.classfile.JavaClass obj)
|
void |
visitCode(org.apache.bcel.classfile.Code obj)
|
void |
visitConstantPool(org.apache.bcel.classfile.ConstantPool obj)
|
boolean |
visitingField()
is the visitor currently visiting a field? |
boolean |
visitingMethod()
is the visitor currently visiting a method? |
void |
visitInnerClasses(org.apache.bcel.classfile.InnerClasses obj)
|
void |
visitJavaClass(org.apache.bcel.classfile.JavaClass obj)
|
void |
visitLineNumberTable(org.apache.bcel.classfile.LineNumberTable obj)
|
void |
visitLocalVariableTable(org.apache.bcel.classfile.LocalVariableTable obj)
|
Methods inherited from class edu.umd.cs.findbugs.visitclass.BetterVisitor |
---|
report, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitCodeException, visitConstantClass, visitConstantDouble, visitConstantFieldref, visitConstantFloat, visitConstantInteger, visitConstantInterfaceMethodref, visitConstantLong, visitConstantMethodref, visitConstantNameAndType, visitConstantString, visitConstantUtf8, visitConstantValue, visitDeprecated, visitExceptionTable, visitField, visitInnerClass, visitLineNumber, visitLocalVariable, visitMethod, visitSignature, visitSourceFile, visitStackMap, visitStackMapEntry, visitSynthetic, visitUnknown |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private org.apache.bcel.classfile.ConstantPool constantPool
private org.apache.bcel.classfile.JavaClass thisClass
private java.lang.String className
private java.lang.String dottedClassName
private java.lang.String packageName
private java.lang.String sourceFile
private java.lang.String superclassName
private java.lang.String dottedSuperclassName
private boolean visitingMethod
private java.lang.String methodSig
private java.lang.String dottedMethodSig
private org.apache.bcel.classfile.Method method
private java.lang.String methodName
private java.lang.String fullyQualifiedMethodName
private boolean visitingField
private java.lang.String fullyQualifiedFieldName
private java.lang.String fieldName
private java.lang.String fieldSig
private java.lang.String dottedFieldSig
private boolean fieldIsStatic
Constructor Detail |
---|
public PreorderVisitor()
Method Detail |
---|
protected java.lang.String getStringFromIndex(int i)
protected int asUnsignedByte(byte b)
public void visitCode(org.apache.bcel.classfile.Code obj)
visitCode
in interface org.apache.bcel.classfile.Visitor
visitCode
in class BetterVisitor
public void visitConstantPool(org.apache.bcel.classfile.ConstantPool obj)
visitConstantPool
in interface org.apache.bcel.classfile.Visitor
visitConstantPool
in class BetterVisitor
private void doVisitField(org.apache.bcel.classfile.Field field)
private void doVisitMethod(org.apache.bcel.classfile.Method method)
public void visitInnerClasses(org.apache.bcel.classfile.InnerClasses obj)
visitInnerClasses
in interface org.apache.bcel.classfile.Visitor
visitInnerClasses
in class BetterVisitor
public void visitAfter(org.apache.bcel.classfile.JavaClass obj)
public void visitJavaClass(org.apache.bcel.classfile.JavaClass obj)
visitJavaClass
in interface org.apache.bcel.classfile.Visitor
visitJavaClass
in class BetterVisitor
public void visitLineNumberTable(org.apache.bcel.classfile.LineNumberTable obj)
visitLineNumberTable
in interface org.apache.bcel.classfile.Visitor
visitLineNumberTable
in class BetterVisitor
public void visitLocalVariableTable(org.apache.bcel.classfile.LocalVariableTable obj)
visitLocalVariableTable
in interface org.apache.bcel.classfile.Visitor
visitLocalVariableTable
in class BetterVisitor
public org.apache.bcel.classfile.ConstantPool getConstantPool()
public java.lang.String getClassName()
public java.lang.String getDottedClassName()
public java.lang.String getPackageName()
public java.lang.String getSourceFile()
public java.lang.String getSuperclassName()
public java.lang.String getDottedSuperclassName()
public org.apache.bcel.classfile.JavaClass getThisClass()
public java.lang.String getFullyQualifiedMethodName()
public boolean visitingMethod()
public boolean visitingField()
public org.apache.bcel.classfile.Method getMethod()
public java.lang.String getMethodName()
public java.lang.String getMethodSig()
public java.lang.String getDottedMethodSig()
public java.lang.String getFieldName()
public java.lang.String getFieldSig()
public boolean getFieldIsStatic()
public java.lang.String getFullyQualifiedFieldName()
public java.lang.String getDottedFieldSig()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |