org.apache.bcel.verifier.statics

## Class StringRepresentation

- java.lang.Object
- - org.apache.bcel.classfile.EmptyVisitor
  - - org.apache.bcel.verifier.statics.StringRepresentation

- All Implemented Interfaces:
    Visitor

      public class StringRepresentation
      extends EmptyVisitor

  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.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `StringRepresentation(Node n)` Creates a new StringRepresentation object which is the representation of n.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `toString()` Returns the String representation.
    `void` | `visitAnnotation(Annotations obj)`
    `void` | `visitAnnotationDefault(AnnotationDefault obj)`
    `void` | `visitAnnotationEntry(AnnotationEntry obj)`
    `void` | `visitBootstrapMethods(BootstrapMethods obj)`
    `void` | `visitCode(Code obj)`
    `void` | `visitCodeException(CodeException obj)`
    `void` | `visitConstantClass(ConstantClass obj)`
    `void` | `visitConstantDouble(ConstantDouble obj)`
    `void` | `visitConstantDynamic(ConstantDynamic obj)`
    `void` | `visitConstantFieldref(ConstantFieldref obj)`
    `void` | `visitConstantFloat(ConstantFloat obj)`
    `void` | `visitConstantInteger(ConstantInteger obj)`
    `void` | `visitConstantInterfaceMethodref(ConstantInterfaceMethodref obj)`
    `void` | `visitConstantInvokeDynamic(ConstantInvokeDynamic obj)`
    `void` | `visitConstantLong(ConstantLong obj)`
    `void` | `visitConstantMethodHandle(ConstantMethodHandle obj)`
    `void` | `visitConstantMethodref(ConstantMethodref obj)`
    `void` | `visitConstantMethodType(ConstantMethodType obj)`
    `void` | `visitConstantModule(ConstantModule obj)`
    `void` | `visitConstantNameAndType(ConstantNameAndType obj)`
    `void` | `visitConstantPackage(ConstantPackage obj)`
    `void` | `visitConstantPool(ConstantPool obj)`
    `void` | `visitConstantString(ConstantString obj)`
    `void` | `visitConstantUtf8(ConstantUtf8 obj)`
    `void` | `visitConstantValue(ConstantValue obj)`
    `void` | `visitDeprecated(Deprecated obj)`
    `void` | `visitEnclosingMethod(EnclosingMethod obj)`
    `void` | `visitExceptionTable(ExceptionTable obj)`
    `void` | `visitField(Field obj)`
    `void` | `visitInnerClass(InnerClass obj)`
    `void` | `visitInnerClasses(InnerClasses obj)`
    `void` | `visitJavaClass(JavaClass obj)`
    `void` | `visitLineNumber(LineNumber obj)`
    `void` | `visitLineNumberTable(LineNumberTable obj)`
    `void` | `visitLocalVariable(LocalVariable obj)`
    `void` | `visitLocalVariableTable(LocalVariableTable obj)`
    `void` | `visitLocalVariableTypeTable(LocalVariableTypeTable obj)`
    `void` | `visitMethod(Method obj)`
    `void` | `visitMethodParameters(MethodParameters obj)`
    `void` | `visitNestMembers(NestMembers obj)`
    `void` | `visitParameterAnnotation(ParameterAnnotations obj)`
    `void` | `visitParameterAnnotationEntry(ParameterAnnotationEntry obj)`
    `void` | `visitSignature(Signature obj)`
    `void` | `visitSourceFile(SourceFile obj)`
    `void` | `visitStackMap(StackMap obj)`
    `void` | `visitStackMapEntry(StackMapEntry obj)`
    `void` | `visitSynthetic(Synthetic obj)`
    `void` | `visitUnknown(Unknown obj)`

    - ### Methods inherited from class org.apache.bcel.classfile.EmptyVisitor

      `visitMethodParameter, visitModule, visitModuleExports, visitModuleMainClass, visitModuleOpens, visitModulePackages, visitModuleProvides, visitModuleRequires, visitNestHost`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### StringRepresentation

          public StringRepresentation(Node n)

      Creates a new StringRepresentation object which is the representation of n.
      Parameters:
        `n` - The node to represent.
      See Also:
        `toString()`

  - ### Method Detail

    - #### toString

          public String toString()

      Returns the String representation.
      Overrides:
        `toString` in class `Object`

    - #### visitAnnotation

          public void visitAnnotation(Annotations obj)

      Specified by:
        `visitAnnotation` in interface `Visitor`
      Overrides:
        `visitAnnotation` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitAnnotationDefault

          public void visitAnnotationDefault(AnnotationDefault obj)

      Specified by:
        `visitAnnotationDefault` in interface `Visitor`
      Overrides:
        `visitAnnotationDefault` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitAnnotationEntry

          public void visitAnnotationEntry(AnnotationEntry obj)

      Specified by:
        `visitAnnotationEntry` in interface `Visitor`
      Overrides:
        `visitAnnotationEntry` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitBootstrapMethods

          public void visitBootstrapMethods(BootstrapMethods obj)

      Specified by:
        `visitBootstrapMethods` in interface `Visitor`
      Overrides:
        `visitBootstrapMethods` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitCode

          public void visitCode(Code obj)

      Specified by:
        `visitCode` in interface `Visitor`
      Overrides:
        `visitCode` in class `EmptyVisitor`

    - #### visitCodeException

          public void visitCodeException(CodeException obj)

      Specified by:
        `visitCodeException` in interface `Visitor`
      Overrides:
        `visitCodeException` in class `EmptyVisitor`

    - #### visitConstantClass

          public void visitConstantClass(ConstantClass obj)

      Specified by:
        `visitConstantClass` in interface `Visitor`
      Overrides:
        `visitConstantClass` in class `EmptyVisitor`

    - #### visitConstantDouble

          public void visitConstantDouble(ConstantDouble obj)

      Specified by:
        `visitConstantDouble` in interface `Visitor`
      Overrides:
        `visitConstantDouble` in class `EmptyVisitor`

    - #### visitConstantDynamic

          public void visitConstantDynamic(ConstantDynamic obj)

      Specified by:
        `visitConstantDynamic` in interface `Visitor`
      Overrides:
        `visitConstantDynamic` in class `EmptyVisitor`
      Since:
        6.6.0

    - #### visitConstantFieldref

          public void visitConstantFieldref(ConstantFieldref obj)

      Specified by:
        `visitConstantFieldref` in interface `Visitor`
      Overrides:
        `visitConstantFieldref` in class `EmptyVisitor`

    - #### visitConstantFloat

          public void visitConstantFloat(ConstantFloat obj)

      Specified by:
        `visitConstantFloat` in interface `Visitor`
      Overrides:
        `visitConstantFloat` in class `EmptyVisitor`

    - #### visitConstantInteger

          public void visitConstantInteger(ConstantInteger obj)

      Specified by:
        `visitConstantInteger` in interface `Visitor`
      Overrides:
        `visitConstantInteger` in class `EmptyVisitor`

    - #### visitConstantInterfaceMethodref

          public void visitConstantInterfaceMethodref(ConstantInterfaceMethodref obj)

      Specified by:
        `visitConstantInterfaceMethodref` in interface `Visitor`
      Overrides:
        `visitConstantInterfaceMethodref` in class `EmptyVisitor`

    - #### visitConstantInvokeDynamic

          public void visitConstantInvokeDynamic(ConstantInvokeDynamic obj)

      Specified by:
        `visitConstantInvokeDynamic` in interface `Visitor`
      Overrides:
        `visitConstantInvokeDynamic` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitConstantLong

          public void visitConstantLong(ConstantLong obj)

      Specified by:
        `visitConstantLong` in interface `Visitor`
      Overrides:
        `visitConstantLong` in class `EmptyVisitor`

    - #### visitConstantMethodHandle

          public void visitConstantMethodHandle(ConstantMethodHandle obj)

      Specified by:
        `visitConstantMethodHandle` in interface `Visitor`
      Overrides:
        `visitConstantMethodHandle` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitConstantMethodref

          public void visitConstantMethodref(ConstantMethodref obj)

      Specified by:
        `visitConstantMethodref` in interface `Visitor`
      Overrides:
        `visitConstantMethodref` in class `EmptyVisitor`

    - #### visitConstantMethodType

          public void visitConstantMethodType(ConstantMethodType obj)

      Specified by:
        `visitConstantMethodType` in interface `Visitor`
      Overrides:
        `visitConstantMethodType` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitConstantModule

          public void visitConstantModule(ConstantModule obj)

      Specified by:
        `visitConstantModule` in interface `Visitor`
      Overrides:
        `visitConstantModule` in class `EmptyVisitor`
      Since:
        6.6.0

    - #### visitConstantNameAndType

          public void visitConstantNameAndType(ConstantNameAndType obj)

      Specified by:
        `visitConstantNameAndType` in interface `Visitor`
      Overrides:
        `visitConstantNameAndType` in class `EmptyVisitor`

    - #### visitConstantPackage

          public void visitConstantPackage(ConstantPackage obj)

      Specified by:
        `visitConstantPackage` in interface `Visitor`
      Overrides:
        `visitConstantPackage` in class `EmptyVisitor`
      Since:
        6.6.0

    - #### visitConstantPool

          public void visitConstantPool(ConstantPool obj)

      Specified by:
        `visitConstantPool` in interface `Visitor`
      Overrides:
        `visitConstantPool` in class `EmptyVisitor`

    - #### visitConstantString

          public void visitConstantString(ConstantString obj)

      Specified by:
        `visitConstantString` in interface `Visitor`
      Overrides:
        `visitConstantString` in class `EmptyVisitor`

    - #### visitConstantUtf8

          public void visitConstantUtf8(ConstantUtf8 obj)

      Specified by:
        `visitConstantUtf8` in interface `Visitor`
      Overrides:
        `visitConstantUtf8` in class `EmptyVisitor`

    - #### visitConstantValue

          public void visitConstantValue(ConstantValue obj)

      Specified by:
        `visitConstantValue` in interface `Visitor`
      Overrides:
        `visitConstantValue` in class `EmptyVisitor`

    - #### visitDeprecated

          public void visitDeprecated(Deprecated obj)

      Specified by:
        `visitDeprecated` in interface `Visitor`
      Overrides:
        `visitDeprecated` in class `EmptyVisitor`

    - #### visitEnclosingMethod

          public void visitEnclosingMethod(EnclosingMethod obj)

      Specified by:
        `visitEnclosingMethod` in interface `Visitor`
      Overrides:
        `visitEnclosingMethod` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitExceptionTable

          public void visitExceptionTable(ExceptionTable obj)

      Specified by:
        `visitExceptionTable` in interface `Visitor`
      Overrides:
        `visitExceptionTable` in class `EmptyVisitor`

    - #### visitField

          public void visitField(Field obj)

      Specified by:
        `visitField` in interface `Visitor`
      Overrides:
        `visitField` in class `EmptyVisitor`

    - #### visitInnerClass

          public void visitInnerClass(InnerClass obj)

      Specified by:
        `visitInnerClass` in interface `Visitor`
      Overrides:
        `visitInnerClass` in class `EmptyVisitor`

    - #### visitInnerClasses

          public void visitInnerClasses(InnerClasses obj)

      Specified by:
        `visitInnerClasses` in interface `Visitor`
      Overrides:
        `visitInnerClasses` in class `EmptyVisitor`

    - #### visitJavaClass

          public void visitJavaClass(JavaClass obj)

      Specified by:
        `visitJavaClass` in interface `Visitor`
      Overrides:
        `visitJavaClass` in class `EmptyVisitor`

    - #### visitLineNumber

          public void visitLineNumber(LineNumber obj)

      Specified by:
        `visitLineNumber` in interface `Visitor`
      Overrides:
        `visitLineNumber` in class `EmptyVisitor`

    - #### visitLineNumberTable

          public void visitLineNumberTable(LineNumberTable obj)

      Specified by:
        `visitLineNumberTable` in interface `Visitor`
      Overrides:
        `visitLineNumberTable` in class `EmptyVisitor`

    - #### visitLocalVariable

          public void visitLocalVariable(LocalVariable obj)

      Specified by:
        `visitLocalVariable` in interface `Visitor`
      Overrides:
        `visitLocalVariable` in class `EmptyVisitor`

    - #### visitLocalVariableTable

          public void visitLocalVariableTable(LocalVariableTable obj)

      Specified by:
        `visitLocalVariableTable` in interface `Visitor`
      Overrides:
        `visitLocalVariableTable` in class `EmptyVisitor`

    - #### visitLocalVariableTypeTable

          public void visitLocalVariableTypeTable(LocalVariableTypeTable obj)

      Specified by:
        `visitLocalVariableTypeTable` in interface `Visitor`
      Overrides:
        `visitLocalVariableTypeTable` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitMethod

          public void visitMethod(Method obj)

      Specified by:
        `visitMethod` in interface `Visitor`
      Overrides:
        `visitMethod` in class `EmptyVisitor`

    - #### visitMethodParameters

          public void visitMethodParameters(MethodParameters obj)

      Specified by:
        `visitMethodParameters` in interface `Visitor`
      Overrides:
        `visitMethodParameters` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitNestMembers

          public void visitNestMembers(NestMembers obj)

      Specified by:
        `visitNestMembers` in interface `Visitor`
      Overrides:
        `visitNestMembers` in class `EmptyVisitor`
      Since:
        6.4.0

    - #### visitParameterAnnotation

          public void visitParameterAnnotation(ParameterAnnotations obj)

      Specified by:
        `visitParameterAnnotation` in interface `Visitor`
      Overrides:
        `visitParameterAnnotation` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitParameterAnnotationEntry

          public void visitParameterAnnotationEntry(ParameterAnnotationEntry obj)

      Specified by:
        `visitParameterAnnotationEntry` in interface `Visitor`
      Overrides:
        `visitParameterAnnotationEntry` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitSignature

          public void visitSignature(Signature obj)

      Specified by:
        `visitSignature` in interface `Visitor`
      Overrides:
        `visitSignature` in class `EmptyVisitor`

    - #### visitSourceFile

          public void visitSourceFile(SourceFile obj)

      Specified by:
        `visitSourceFile` in interface `Visitor`
      Overrides:
        `visitSourceFile` in class `EmptyVisitor`

    - #### visitStackMap

          public void visitStackMap(StackMap obj)

      Specified by:
        `visitStackMap` in interface `Visitor`
      Overrides:
        `visitStackMap` in class `EmptyVisitor`

    - #### visitStackMapEntry

          public void visitStackMapEntry(StackMapEntry obj)

      Specified by:
        `visitStackMapEntry` in interface `Visitor`
      Overrides:
        `visitStackMapEntry` in class `EmptyVisitor`
      Since:
        6.0

    - #### visitSynthetic

          public void visitSynthetic(Synthetic obj)

      Specified by:
        `visitSynthetic` in interface `Visitor`
      Overrides:
        `visitSynthetic` in class `EmptyVisitor`

    - #### visitUnknown

          public void visitUnknown(Unknown obj)

      Specified by:
        `visitUnknown` in interface `Visitor`
      Overrides:
        `visitUnknown` in class `EmptyVisitor`

Copyright © 2004–2022 The Apache Software Foundation. All rights reserved.