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