public class StackMapFrameEntry extends AbstractStructure
classFile, debug, SYSTEM_PROPERTY_DEBUG
Constructor and Description |
---|
StackMapFrameEntry() |
Modifier and Type | Method and Description |
---|---|
static StackMapFrameEntry |
create(DataInput in,
ClassFile classFile,
int previousOffset)
Factory method for creating StackMapFrameEntry structures.
|
protected void |
debug(String message)
Utility method for derived structures.
|
StackFrameType |
getFrameType()
Returns the frame type category
|
int |
getLength()
Returns the bytecode length of the entry
|
VerificationTypeInfoEntry[] |
getLocalItems()
Returns the local variable verifications
|
int |
getOffset()
Returns the offset
|
int |
getOffsetDelta()
Returns the offset delta
|
VerificationTypeInfoEntry[] |
getStackItems()
Returns the stack variable verifications
|
int |
getTag()
Returns the frame tag
|
String |
getVerbose()
Returns the verbose representation for display in the UI
|
protected String |
printAccessFlagsVerbose(int accessFlags)
Utility method for derived structures.
|
void |
read(DataInput in)
Read this structure from the given DataInput.
|
void |
setFrameType(StackFrameType frameType)
Sets the frame type
|
void |
setLocalItems(VerificationTypeInfoEntry[] localItems)
Sets the local verification items.
|
void |
setOffset(int offset)
Sets the offset.
|
void |
setOffsetDelta(int offsetDelta)
Sets the offset delta.
|
void |
setStackItems(VerificationTypeInfoEntry[] stackItems)
Sets the stack verification items.
|
void |
setTag(int tag) |
void |
write(DataOutput out)
Write this structure to the given DataOutput.
|
getClassFile, getDebug, getLength, printAccessFlags, printAccessFlagsVerbose, printBytes, setClassFile, setDebug
public static StackMapFrameEntry create(DataInput in, ClassFile classFile, int previousOffset) throws InvalidByteCodeException, IOException
in
- the DataInput from which to read the
StackMapFrameEntry structureclassFile
- the parent class file of the structure to be createdpreviousOffset
- the offset of the previous stack map frameInvalidByteCodeException
- if the byte code is invalidIOException
- if an exception occurs with the DataInputpublic int getTag()
public void setTag(int tag)
public StackFrameType getFrameType()
public void setFrameType(StackFrameType frameType)
public int getOffsetDelta()
public void setOffsetDelta(int offsetDelta)
public int getOffset()
public void setOffset(int offset)
public VerificationTypeInfoEntry[] getLocalItems()
public void setLocalItems(VerificationTypeInfoEntry[] localItems)
public VerificationTypeInfoEntry[] getStackItems()
public void setStackItems(VerificationTypeInfoEntry[] stackItems)
public void read(DataInput in) throws InvalidByteCodeException, IOException
AbstractStructure
Expects DataInput to be in JVM class file format and just before a structure of this kind. No look ahead parsing since the class file format is deterministic.
read
in class AbstractStructure
in
- the DataInput from which to readInvalidByteCodeException
- if the byte code is invalidIOException
- if an exception occurs with the DataInputpublic void write(DataOutput out) throws InvalidByteCodeException, IOException
AbstractStructure
The written bytes are in JVM class file format.
write
in class AbstractStructure
out
- the DataOutput to which to writeInvalidByteCodeException
- if the structure is internally inconsistentIOException
- if an exception occurs with the DataOutputprotected void debug(String message)
AbstractStructure
debug
in class AbstractStructure
message
- the debug messagepublic String getVerbose()
public int getLength()
protected String printAccessFlagsVerbose(int accessFlags)
AbstractStructure
printAccessFlagsVerbose
in class AbstractStructure
accessFlags
- the unsigned short value to print as a hex string