Package org.openjdk.asmtools.jdis
Class StackMapData
- All Implemented Interfaces:
Printable
represents one entry of StackMap attribute
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.openjdk.asmtools.jdis.MemberData
MemberData.AnnotationElementState
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) int
(package private) int[]
(package private) int
(package private) StackMap.FrameType
(package private) int
(package private) int[]
(package private) StackMapData.EAttributeType
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
ConstructorsConstructorDescriptionStackMapData
(StackMapData.EAttributeType type, boolean firstStackMap, int prevFrame_pc, CodeData code, DataInputStream in) -
Method Summary
Modifier and TypeMethodDescriptionint
private int[]
private int[]
readMapElements
(DataInputStream in, int num) Methods inherited from class org.openjdk.asmtools.jdis.MemberData
getAnnotationElementState, getAnnotationsCount, getConstantPool, getPseudoFlagsAsString, handleAttributes, 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, 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
-
type
-
stackFrameType
StackMap.FrameType stackFrameType -
stackFrameTypeValue
int stackFrameTypeValue -
frame_pc
int frame_pc -
offset
int offset -
lockMap
int[] lockMap -
stackMap
int[] stackMap
-
-
Constructor Details
-
StackMapData
public StackMapData(StackMapData.EAttributeType type, boolean firstStackMap, int prevFrame_pc, CodeData code, DataInputStream in) throws IOException - Parameters:
type
- either Implicit stack map attribute or the StackMapTable attributefirstStackMap
- is it an entries[0] in the stack_map_frame structure? i.e. Does the StackMapData describe the second stack map frame of the method?prevFrame_pc
- the bytecode offset of the previous entry (entries[current_index-1])code
- the code attribute where this attribute is locatedin
- the input stream- Throws:
IOException
- the exception if something went wrong
-
-
Method Details
-
getFramePC
public int getFramePC()- Returns:
- the bytecode offset at which a stack map frame applies
-
readMap
- Throws:
IOException
-
readMapElements
- Throws:
IOException
-