Class ClassFileBytesDisassembler

java.lang.Object
org.eclipse.jdt.core.util.ClassFileBytesDisassembler

public abstract class ClassFileBytesDisassembler extends Object
This class is intended to be subclassed to disassemble classfile bytes onto a String using the proper line separator.
Since:
2.1
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    This mode is used to compact the class name to a simple name instead of a qualified name.
    static final int
    The mode is the default mode to disassemble IClassFileReader.
    static final int
    The mode is the detailed mode to disassemble IClassFileReader.
    static final int
    This mode corresponds to the detailed mode plus the constant pool contents and any further information that would be useful for debugging purpose.
    static final int
    This mode is used to retrive a pseudo code for working copy purpose.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract String
    disassemble(byte[] classFileBytes, String lineSeparator)
    Answers back the disassembled string of the classfile bytes using the default mode.
    abstract String
    disassemble(byte[] classFileBytes, String lineSeparator, int mode)
    Answers back the disassembled string of the classfile bytes according to the mode.
    abstract String
    Answers a readable short description of this disassembler

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • DETAILED

      public static final int DETAILED
      The mode is the detailed mode to disassemble IClassFileReader. It returns the magic numbers, the version numbers and field and method descriptors.
      See Also:
    • DEFAULT

      public static final int DEFAULT
      The mode is the default mode to disassemble IClassFileReader.
      See Also:
    • SYSTEM

      public static final int SYSTEM
      This mode corresponds to the detailed mode plus the constant pool contents and any further information that would be useful for debugging purpose.
      Since:
      3.1
      See Also:
    • COMPACT

      public static final int COMPACT
      This mode is used to compact the class name to a simple name instead of a qualified name.
      Since:
      3.1
      See Also:
    • WORKING_COPY

      public static final int WORKING_COPY
      This mode is used to retrive a pseudo code for working copy purpose.
      Since:
      3.2
      See Also:
  • Constructor Details

    • ClassFileBytesDisassembler

      public ClassFileBytesDisassembler()
  • Method Details

    • disassemble

      public abstract String disassemble(byte[] classFileBytes, String lineSeparator) throws ClassFormatException
      Answers back the disassembled string of the classfile bytes using the default mode. This is an output quite similar to the javap tool, using DEFAULT mode.
      Parameters:
      classFileBytes - The bytes of the classfile
      lineSeparator - the line separator to use.
      Returns:
      the disassembled string of the IClassFileReader using the default mode.
      Throws:
      ClassFormatException - if the classfile bytes are ill-formed
    • disassemble

      public abstract String disassemble(byte[] classFileBytes, String lineSeparator, int mode) throws ClassFormatException
      Answers back the disassembled string of the classfile bytes according to the mode. This is an output quite similar to the javap tool.
      Parameters:
      classFileBytes - The bytes of the classfile
      lineSeparator - the line separator to use.
      mode - the mode used to disassemble the IClassFileReader
      Returns:
      the disassembled string of the IClassFileReader according to the mode
      Throws:
      ClassFormatException - if the classfile bytes are ill-formed
    • getDescription

      public abstract String getDescription()
      Answers a readable short description of this disassembler
      Returns:
      String - a string description of the disassembler