Top Description Fields Constructors Methods
org.apache.bcel.verifier.statics

public Class StringRepresentation

extends EmptyVisitor
Class Inheritance
Imports
org.apache.bcel.classfile.AnnotationDefault, .AnnotationEntry, .Annotations, .BootstrapMethods, .Code, .CodeException, .ConstantClass, .ConstantDouble, .ConstantDynamic, .ConstantFieldref, .ConstantFloat, .ConstantInteger, .ConstantInterfaceMethodref, .ConstantInvokeDynamic, .ConstantLong, .ConstantMethodHandle, .ConstantMethodType, .ConstantMethodref, .ConstantModule, .ConstantNameAndType, .ConstantPackage, .ConstantPool, .ConstantString, .ConstantUtf8, .ConstantValue, .Deprecated, .EnclosingMethod, .ExceptionTable, .Field, .InnerClass, .InnerClasses, .JavaClass, .LineNumber, .LineNumberTable, .LocalVariable, .LocalVariableTable, .LocalVariableTypeTable, .Method, .MethodParameters, .NestMembers, .Node, .ParameterAnnotationEntry, .ParameterAnnotations, .Signature, .SourceFile, .StackMap, .StackMapEntry, .Synthetic, .Unknown, org.apache.bcel.verifier.exc.AssertionViolatedException

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.

Field Summary

Modifier and TypeField and Description
private final Node
n

The node we ask for its string representation.

private String
tostring

The string representation, created by a visitXXX() method, output by toString().

Constructor Summary

AccessConstructor and Description
public
StringRepresentation(final Node
The node to represent.
n
)

Creates a new StringRepresentation object which is the representation of n.

Method Summary

Modifier and TypeMethod and Description
public String
toString()

Overrides java.lang.Object.toString.

Returns the String representation.
private String
toString(final Node obj)

Returns the String representation of the Node object obj; this is obj.toString() if it does not throw any RuntimeException, or else it is a string derived only from obj's class name.

public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
public void
Inherited from org.apache.bcel.classfile.EmptyVisitor:
visitMethodParametervisitModulevisitModuleExportsvisitModuleMainClassvisitModuleOpensvisitModulePackagesvisitModuleProvidesvisitModuleRequiresvisitNestHostvisitStackMapType

Field Detail

nback to summary
private final Node n

The node we ask for its string representation. Not really needed; only for debug output.

tostringback to summary
private String tostring

The string representation, created by a visitXXX() method, output by toString().

Constructor Detail

StringRepresentationback to summary
public StringRepresentation(final Node n)

Creates a new StringRepresentation object which is the representation of n.

Parameters
n:Node

The node to represent.

See Also
toString()

Method Detail

toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Returns the String representation.

Returns:String

Doc from java.lang.Object.toString.

a string representation of the object.

Annotations
@Override
toStringback to summary
private String toString(final Node obj)

Returns the String representation of the Node object obj; this is obj.toString() if it does not throw any RuntimeException, or else it is a string derived only from obj's class name.

visitAnnotationback to summary
public void visitAnnotation(final Annotations obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitAnnotation.

Implements org.apache.bcel.classfile.Visitor.visitAnnotation.

Annotations
@Override
Since
6.0
visitAnnotationDefaultback to summary
public void visitAnnotationDefault(final AnnotationDefault obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitAnnotationDefault.

Implements org.apache.bcel.classfile.Visitor.visitAnnotationDefault.

Annotations
@Override
Since
6.0
visitAnnotationEntryback to summary
public void visitAnnotationEntry(final AnnotationEntry obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitAnnotationEntry.

Implements org.apache.bcel.classfile.Visitor.visitAnnotationEntry.

Annotations
@Override
Since
6.0
visitBootstrapMethodsback to summary
public void visitBootstrapMethods(final BootstrapMethods obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitBootstrapMethods.

Implements org.apache.bcel.classfile.Visitor.visitBootstrapMethods.

Annotations
@Override
Since
6.0
visitCodeback to summary
public void visitCode(final Code obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitCode.

Implements org.apache.bcel.classfile.Visitor.visitCode.

Annotations
@Override
visitCodeExceptionback to summary
public void visitCodeException(final CodeException obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitCodeException.

Implements org.apache.bcel.classfile.Visitor.visitCodeException.

Deprecated

as a consequence of CodeException being deprecated. See corresponding docs for further information.

Annotations
@Override
visitConstantClassback to summary
public void visitConstantClass(final ConstantClass obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantClass.

Implements org.apache.bcel.classfile.Visitor.visitConstantClass.

Annotations
@Override
visitConstantDoubleback to summary
public void visitConstantDouble(final ConstantDouble obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantDouble.

Implements org.apache.bcel.classfile.Visitor.visitConstantDouble.

Annotations
@Override
visitConstantDynamicback to summary
public void visitConstantDynamic(final ConstantDynamic obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantDynamic.

Overrides default org.apache.bcel.classfile.Visitor.visitConstantDynamic.

Annotations
@Override
Since
6.6.0
visitConstantFieldrefback to summary
public void visitConstantFieldref(final ConstantFieldref obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantFieldref.

Implements org.apache.bcel.classfile.Visitor.visitConstantFieldref.

Annotations
@Override
visitConstantFloatback to summary
public void visitConstantFloat(final ConstantFloat obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantFloat.

Implements org.apache.bcel.classfile.Visitor.visitConstantFloat.

Annotations
@Override
visitConstantIntegerback to summary
public void visitConstantInteger(final ConstantInteger obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantInteger.

Implements org.apache.bcel.classfile.Visitor.visitConstantInteger.

Annotations
@Override
visitConstantInterfaceMethodrefback to summary
public void visitConstantInterfaceMethodref(final ConstantInterfaceMethodref obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantInterfaceMethodref.

Implements org.apache.bcel.classfile.Visitor.visitConstantInterfaceMethodref.

Annotations
@Override
visitConstantInvokeDynamicback to summary
public void visitConstantInvokeDynamic(final ConstantInvokeDynamic obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantInvokeDynamic.

Implements org.apache.bcel.classfile.Visitor.visitConstantInvokeDynamic.

Annotations
@Override
Since
6.0
visitConstantLongback to summary
public void visitConstantLong(final ConstantLong obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantLong.

Implements org.apache.bcel.classfile.Visitor.visitConstantLong.

Annotations
@Override
visitConstantMethodHandleback to summary
public void visitConstantMethodHandle(final ConstantMethodHandle obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantMethodHandle.

Implements org.apache.bcel.classfile.Visitor.visitConstantMethodHandle.

Annotations
@Override
Since
6.0
visitConstantMethodrefback to summary
public void visitConstantMethodref(final ConstantMethodref obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantMethodref.

Implements org.apache.bcel.classfile.Visitor.visitConstantMethodref.

Annotations
@Override
visitConstantMethodTypeback to summary
public void visitConstantMethodType(final ConstantMethodType obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantMethodType.

Implements org.apache.bcel.classfile.Visitor.visitConstantMethodType.

Annotations
@Override
Since
6.0
visitConstantModuleback to summary
public void visitConstantModule(final ConstantModule obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantModule.

Implements org.apache.bcel.classfile.Visitor.visitConstantModule.

Annotations
@Override
Since
6.6.0
visitConstantNameAndTypeback to summary
public void visitConstantNameAndType(final ConstantNameAndType obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantNameAndType.

Implements org.apache.bcel.classfile.Visitor.visitConstantNameAndType.

Annotations
@Override
visitConstantPackageback to summary
public void visitConstantPackage(final ConstantPackage obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantPackage.

Implements org.apache.bcel.classfile.Visitor.visitConstantPackage.

Annotations
@Override
Since
6.6.0
visitConstantPoolback to summary
public void visitConstantPool(final ConstantPool obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantPool.

Implements org.apache.bcel.classfile.Visitor.visitConstantPool.

Annotations
@Override
visitConstantStringback to summary
public void visitConstantString(final ConstantString obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantString.

Implements org.apache.bcel.classfile.Visitor.visitConstantString.

Annotations
@Override
visitConstantUtf8back to summary
public void visitConstantUtf8(final ConstantUtf8 obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantUtf8.

Implements org.apache.bcel.classfile.Visitor.visitConstantUtf8.

Annotations
@Override
visitConstantValueback to summary
public void visitConstantValue(final ConstantValue obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitConstantValue.

Implements org.apache.bcel.classfile.Visitor.visitConstantValue.

Annotations
@Override
visitDeprecatedback to summary
public void visitDeprecated(final Deprecated obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitDeprecated.

Implements org.apache.bcel.classfile.Visitor.visitDeprecated.

Annotations
@Override
visitEnclosingMethodback to summary
public void visitEnclosingMethod(final EnclosingMethod obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitEnclosingMethod.

Implements org.apache.bcel.classfile.Visitor.visitEnclosingMethod.

Annotations
@Override
Since
6.0
visitExceptionTableback to summary
public void visitExceptionTable(final ExceptionTable obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitExceptionTable.

Implements org.apache.bcel.classfile.Visitor.visitExceptionTable.

Annotations
@Override
visitFieldback to summary
public void visitField(final Field obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitField.

Implements org.apache.bcel.classfile.Visitor.visitField.

Annotations
@Override
visitInnerClassback to summary
public void visitInnerClass(final InnerClass obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitInnerClass.

Implements org.apache.bcel.classfile.Visitor.visitInnerClass.

Annotations
@Override
visitInnerClassesback to summary
public void visitInnerClasses(final InnerClasses obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitInnerClasses.

Implements org.apache.bcel.classfile.Visitor.visitInnerClasses.

Annotations
@Override
visitJavaClassback to summary
public void visitJavaClass(final JavaClass obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitJavaClass.

Implements org.apache.bcel.classfile.Visitor.visitJavaClass.

Annotations
@Override
visitLineNumberback to summary
public void visitLineNumber(final LineNumber obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitLineNumber.

Implements org.apache.bcel.classfile.Visitor.visitLineNumber.

Annotations
@Override
visitLineNumberTableback to summary
public void visitLineNumberTable(final LineNumberTable obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitLineNumberTable.

Implements org.apache.bcel.classfile.Visitor.visitLineNumberTable.

Annotations
@Override
visitLocalVariableback to summary
public void visitLocalVariable(final LocalVariable obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitLocalVariable.

Implements org.apache.bcel.classfile.Visitor.visitLocalVariable.

Deprecated

as a consequence of LocalVariable being deprecated. See corresponding docs for further information.

Annotations
@Override
visitLocalVariableTableback to summary
public void visitLocalVariableTable(final LocalVariableTable obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitLocalVariableTable.

Implements org.apache.bcel.classfile.Visitor.visitLocalVariableTable.

Annotations
@Override
visitLocalVariableTypeTableback to summary
public void visitLocalVariableTypeTable(final LocalVariableTypeTable obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitLocalVariableTypeTable.

Implements org.apache.bcel.classfile.Visitor.visitLocalVariableTypeTable.

Annotations
@Override
Since
6.0
visitMethodback to summary
public void visitMethod(final Method obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitMethod.

Implements org.apache.bcel.classfile.Visitor.visitMethod.

Annotations
@Override
visitMethodParametersback to summary
public void visitMethodParameters(final MethodParameters obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitMethodParameters.

Implements org.apache.bcel.classfile.Visitor.visitMethodParameters.

Annotations
@Override
Since
6.0
visitNestMembersback to summary
public void visitNestMembers(final NestMembers obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitNestMembers.

Overrides default org.apache.bcel.classfile.Visitor.visitNestMembers.

Annotations
@Override
Since
6.4.0
visitParameterAnnotationback to summary
public void visitParameterAnnotation(final ParameterAnnotations obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitParameterAnnotation.

Implements org.apache.bcel.classfile.Visitor.visitParameterAnnotation.

Annotations
@Override
Since
6.0
visitParameterAnnotationEntryback to summary
public void visitParameterAnnotationEntry(final ParameterAnnotationEntry obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitParameterAnnotationEntry.

Implements org.apache.bcel.classfile.Visitor.visitParameterAnnotationEntry.

Annotations
@Override
Since
6.0
visitSignatureback to summary
public void visitSignature(final Signature obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitSignature.

Implements org.apache.bcel.classfile.Visitor.visitSignature.

Annotations
@Override
visitSourceFileback to summary
public void visitSourceFile(final SourceFile obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitSourceFile.

Implements org.apache.bcel.classfile.Visitor.visitSourceFile.

Annotations
@Override
visitStackMapback to summary
public void visitStackMap(final StackMap obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitStackMap.

Implements org.apache.bcel.classfile.Visitor.visitStackMap.

Annotations
@Override
visitStackMapEntryback to summary
public void visitStackMapEntry(final StackMapEntry obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitStackMapEntry.

Implements org.apache.bcel.classfile.Visitor.visitStackMapEntry.

Annotations
@Override
Since
6.0
visitSyntheticback to summary
public void visitSynthetic(final Synthetic obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitSynthetic.

Implements org.apache.bcel.classfile.Visitor.visitSynthetic.

Annotations
@Override
visitUnknownback to summary
public void visitUnknown(final Unknown obj)

Overrides org.apache.bcel.classfile.EmptyVisitor.visitUnknown.

Implements org.apache.bcel.classfile.Visitor.visitUnknown.

Annotations
@Override