Package org.openjdk.asmtools.jdis
Class StackMapData
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) 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, 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
-
Field Details
-
type
-
stackFrameType
StackMap.FrameType stackFrameType -
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
-