Package org.openjdk.asmtools.jdis
Class MethodData
- All Implemented Interfaces:
Printable
Method data for method members in a class of the Java Disassembler
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static class
MethodParamDataNested classes/interfaces inherited from class org.openjdk.asmtools.jdis.MemberData
MemberData.AnnotationElementState
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate CodeData
protected AnnotationElement.AnnotationValue
private int[]
protected ParameterAnnotationData
protected String
protected int
protected ArrayList<MethodData.ParamNameData>
protected int
protected ParameterAnnotationData
Fields inherited from class org.openjdk.asmtools.jdis.MemberData
access, attributes, data, DEFAULT_VALUE_PREFIX, environment, invisibleAnnotations, invisibleTypeAnnotations, isDeprecated, isSynthetic, memberType, pool, signature, visibleAnnotations, visibleTypeAnnotations
Fields inherited from class org.openjdk.asmtools.jdis.Indenter
ARGUMENT_DELIMITER, COMMENT_OFFSET, COMMENT_PADDING, INDENT_OFFSET, INDENT_STEP, INDENT_STRING, INSTR_PREFIX_LENGTH, LINE_SPLITTER, OPERAND_PLACEHOLDER_LENGTH, printConstantPool, printCPIndex, printHEX, printLabelAsIdentifiers, printLineTable, printLocalVars, printProgramCounter, printSourceLines, PROGRAM_COUNTER_PLACEHOLDER_LENGTH, skipComments, STACKMAP_TYPE_PLACEHOLDER_LENGTH, toolOutput
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate String[]
getPrintableParameterNames
(int maxParams) protected boolean
handleAttributes
(DataInputStream in, EAttribute attributeTag, int attributeLength) void
print()
Prints the method data to the current output stream.private boolean
printAnnotationDataList
(List<AnnotationData> annotationDataList, boolean firstTime, int offset) Prints a list of Visible/Invisible parameter annotationsprivate void
printExceptionTable
(boolean abstractMethod) void
prints the parameter annotations for this method.void
read
(DataInputStream in) Read and resolve the method data called from ClassData.private void
private void
Methods inherited from class org.openjdk.asmtools.jdis.MemberData
getAnnotationElementState, getAnnotationsCount, getConstantPool, getPseudoFlagsAsString, init, printAnnotations, printVar, readAttributes, setElementState
Methods inherited from class org.openjdk.asmtools.jdis.Indenter
decIndent, enlargedIndent, enlargedIndent, getCommentOffset, getIndentSize, getIndentStep, getIndentString, getOffset, incIndent, Indent, IndentPadLeft, IndentPadRight, initIndent, nCopies, padLeft, PadLeft, padRight, PadRight, print, print, printIndent, printIndent, printIndent, printIndentLn, printIndentLn, printIndentLn, printIndentPadRight, println, println, println, println, printPadLeft, printPadRight, resetIndent, setCommentOffset, setOffset, setTheSame
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.openjdk.asmtools.jdis.Printable
isPrintable
-
Field Details
-
name_cpx
protected int name_cpx -
sig_cpx
protected int sig_cpx -
lP
-
paramNameDates
-
visibleParameterAnnotations
-
invisibleParameterAnnotations
-
defaultAnnotation
-
code
-
exc_table
private int[] exc_table
-
-
Constructor Details
-
MethodData
-
-
Method Details
-
handleAttributes
protected boolean handleAttributes(DataInputStream in, EAttribute attributeTag, int attributeLength) throws IOException - Overrides:
handleAttributes
in classMemberData<ClassData>
- Throws:
IOException
-
read
Read and resolve the method data called from ClassData. Precondition: NumFields has already been read from the stream.- Throws:
IOException
-
readExceptions
- Throws:
IOException
-
readMethodParameters
- Throws:
IOException
-
printPAnnotations
prints the parameter annotations for this method. called from CodeAttr (since JASM code integrates the PAnnotation Syntax inside the method body).- Throws:
IOException
-
printAnnotationDataList
private boolean printAnnotationDataList(List<AnnotationData> annotationDataList, boolean firstTime, int offset) throws IOException Prints a list of Visible/Invisible parameter annotations- Throws:
IOException
-
getPrintableParameterNames
-
print
Prints the method data to the current output stream. called from ClassData.- Specified by:
print
in interfacePrintable
- Overrides:
print
in classIndenter
- Throws:
IOException
-
printExceptionTable
private void printExceptionTable(boolean abstractMethod)
-