Class ClassFileBytesDisassembler
java.lang.Object
org.aspectj.org.eclipse.jdt.core.util.ClassFileBytesDisassembler
- Direct Known Subclasses:
Disassembler
This class is intended to be subclassed to disassemble
classfile bytes onto a String using the proper line separator.
- Since:
- 2.1
-
Field Summary
Modifier and TypeFieldDescriptionstatic int
This mode is used to compact the class name to a simple name instead of a qualified name.static int
The mode is the default mode to disassemble IClassFileReader.static int
The mode is the detailed mode to disassemble IClassFileReader.static 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 int
This mode is used to retrive a pseudo code for working copy purpose. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract 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
-
Field Details
-
DETAILED
public static final int DETAILEDThe mode is the detailed mode to disassemble IClassFileReader. It returns the magic numbers, the version numbers and field and method descriptors.- See Also:
- Constant Field Values
-
DEFAULT
public static final int DEFAULTThe mode is the default mode to disassemble IClassFileReader.- See Also:
- Constant Field Values
-
SYSTEM
public static final int SYSTEMThis 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:
- Constant Field Values
-
COMPACT
public static final int COMPACTThis mode is used to compact the class name to a simple name instead of a qualified name.- Since:
- 3.1
- See Also:
- Constant Field Values
-
WORKING_COPY
public static final int WORKING_COPYThis mode is used to retrive a pseudo code for working copy purpose.- Since:
- 3.2
- See Also:
- Constant Field Values
-
-
Constructor Details
-
ClassFileBytesDisassembler
public ClassFileBytesDisassembler()
-
-
Method Details
-
disassemble
public abstract String disassemble(byte[] classFileBytes, String lineSeparator) throws ClassFormatExceptionAnswers 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 classfilelineSeparator
- 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 ClassFormatExceptionAnswers 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 classfilelineSeparator
- 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
Answers a readable short description of this disassembler- Returns:
- String - a string description of the disassembler
-