de.fub.bytecode.verifier.statics
Class StringRepresentation
java.lang.Object
|
+--de.fub.bytecode.classfile.EmptyVisitor
|
+--de.fub.bytecode.verifier.statics.StringRepresentation
- All Implemented Interfaces:
- de.fub.bytecode.classfile.Visitor
- public class StringRepresentation
- extends de.fub.bytecode.classfile.EmptyVisitor
- implements de.fub.bytecode.classfile.Visitor
BCEL's Node classes (those from the classfile API that accept() Visitor
instances) have toString() methods that were not designed to be robust,
this gap is closed by this class.
When performing class file verification, it may be useful to output which
entity (e.g. a Code instance) is not satisfying the verifier's
constraints, but in this case it could be possible for the toString()
method to throw a RuntimeException.
A (new StringRepresentation(Node n)).toString() never throws any exception.
Note that this class also serves as a placeholder for more sophisticated message
handling in future versions of JustIce.
- Version:
- $Id: StringRepresentation.java,v 1.11 2001/08/30 08:45:42 ehaase Exp $
- Author:
- Enver Haase
Constructor Summary |
StringRepresentation(de.fub.bytecode.classfile.Node n)
Creates a new StringRepresentation object which is the representation of n. |
Methods inherited from class de.fub.bytecode.classfile.EmptyVisitor |
visitStackMap, visitStackMapEntry |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface de.fub.bytecode.classfile.Visitor |
visitStackMap, visitStackMapEntry |
StringRepresentation
public StringRepresentation(de.fub.bytecode.classfile.Node n)
- Creates a new StringRepresentation object which is the representation of n.
- See Also:
toString()
toString
public java.lang.String toString()
- Returns the String representation.
- Overrides:
toString
in class java.lang.Object
visitCode
public void visitCode(de.fub.bytecode.classfile.Code obj)
- Specified by:
visitCode
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitCode
in class de.fub.bytecode.classfile.EmptyVisitor
visitCodeException
public void visitCodeException(de.fub.bytecode.classfile.CodeException obj)
- Specified by:
visitCodeException
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitCodeException
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantClass
public void visitConstantClass(de.fub.bytecode.classfile.ConstantClass obj)
- Specified by:
visitConstantClass
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantClass
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantDouble
public void visitConstantDouble(de.fub.bytecode.classfile.ConstantDouble obj)
- Specified by:
visitConstantDouble
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantDouble
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantFieldref
public void visitConstantFieldref(de.fub.bytecode.classfile.ConstantFieldref obj)
- Specified by:
visitConstantFieldref
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantFieldref
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantFloat
public void visitConstantFloat(de.fub.bytecode.classfile.ConstantFloat obj)
- Specified by:
visitConstantFloat
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantFloat
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantInteger
public void visitConstantInteger(de.fub.bytecode.classfile.ConstantInteger obj)
- Specified by:
visitConstantInteger
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantInteger
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantInterfaceMethodref
public void visitConstantInterfaceMethodref(de.fub.bytecode.classfile.ConstantInterfaceMethodref obj)
- Specified by:
visitConstantInterfaceMethodref
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantInterfaceMethodref
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantLong
public void visitConstantLong(de.fub.bytecode.classfile.ConstantLong obj)
- Specified by:
visitConstantLong
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantLong
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantMethodref
public void visitConstantMethodref(de.fub.bytecode.classfile.ConstantMethodref obj)
- Specified by:
visitConstantMethodref
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantMethodref
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantNameAndType
public void visitConstantNameAndType(de.fub.bytecode.classfile.ConstantNameAndType obj)
- Specified by:
visitConstantNameAndType
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantNameAndType
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantPool
public void visitConstantPool(de.fub.bytecode.classfile.ConstantPool obj)
- Specified by:
visitConstantPool
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantPool
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantString
public void visitConstantString(de.fub.bytecode.classfile.ConstantString obj)
- Specified by:
visitConstantString
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantString
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantUtf8
public void visitConstantUtf8(de.fub.bytecode.classfile.ConstantUtf8 obj)
- Specified by:
visitConstantUtf8
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantUtf8
in class de.fub.bytecode.classfile.EmptyVisitor
visitConstantValue
public void visitConstantValue(de.fub.bytecode.classfile.ConstantValue obj)
- Specified by:
visitConstantValue
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitConstantValue
in class de.fub.bytecode.classfile.EmptyVisitor
visitDeprecated
public void visitDeprecated(de.fub.bytecode.classfile.Deprecated obj)
- Specified by:
visitDeprecated
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitDeprecated
in class de.fub.bytecode.classfile.EmptyVisitor
visitExceptionTable
public void visitExceptionTable(de.fub.bytecode.classfile.ExceptionTable obj)
- Specified by:
visitExceptionTable
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitExceptionTable
in class de.fub.bytecode.classfile.EmptyVisitor
visitField
public void visitField(de.fub.bytecode.classfile.Field obj)
- Specified by:
visitField
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitField
in class de.fub.bytecode.classfile.EmptyVisitor
visitInnerClass
public void visitInnerClass(de.fub.bytecode.classfile.InnerClass obj)
- Specified by:
visitInnerClass
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitInnerClass
in class de.fub.bytecode.classfile.EmptyVisitor
visitInnerClasses
public void visitInnerClasses(de.fub.bytecode.classfile.InnerClasses obj)
- Specified by:
visitInnerClasses
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitInnerClasses
in class de.fub.bytecode.classfile.EmptyVisitor
visitJavaClass
public void visitJavaClass(de.fub.bytecode.classfile.JavaClass obj)
- Specified by:
visitJavaClass
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitJavaClass
in class de.fub.bytecode.classfile.EmptyVisitor
visitLineNumber
public void visitLineNumber(de.fub.bytecode.classfile.LineNumber obj)
- Specified by:
visitLineNumber
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitLineNumber
in class de.fub.bytecode.classfile.EmptyVisitor
visitLineNumberTable
public void visitLineNumberTable(de.fub.bytecode.classfile.LineNumberTable obj)
- Specified by:
visitLineNumberTable
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitLineNumberTable
in class de.fub.bytecode.classfile.EmptyVisitor
visitLocalVariable
public void visitLocalVariable(de.fub.bytecode.classfile.LocalVariable obj)
- Specified by:
visitLocalVariable
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitLocalVariable
in class de.fub.bytecode.classfile.EmptyVisitor
visitLocalVariableTable
public void visitLocalVariableTable(de.fub.bytecode.classfile.LocalVariableTable obj)
- Specified by:
visitLocalVariableTable
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitLocalVariableTable
in class de.fub.bytecode.classfile.EmptyVisitor
visitMethod
public void visitMethod(de.fub.bytecode.classfile.Method obj)
- Specified by:
visitMethod
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitMethod
in class de.fub.bytecode.classfile.EmptyVisitor
visitSourceFile
public void visitSourceFile(de.fub.bytecode.classfile.SourceFile obj)
- Specified by:
visitSourceFile
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitSourceFile
in class de.fub.bytecode.classfile.EmptyVisitor
visitSynthetic
public void visitSynthetic(de.fub.bytecode.classfile.Synthetic obj)
- Specified by:
visitSynthetic
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitSynthetic
in class de.fub.bytecode.classfile.EmptyVisitor
visitUnknown
public void visitUnknown(de.fub.bytecode.classfile.Unknown obj)
- Specified by:
visitUnknown
in interface de.fub.bytecode.classfile.Visitor
- Overrides:
visitUnknown
in class de.fub.bytecode.classfile.EmptyVisitor