static class StackMapTable.Printer extends StackMapTable.Walker
| Modifier and Type | Field and Description |
|---|---|
private int |
offset |
private java.io.PrintWriter |
writer |
info, numOfEntries| Constructor and Description |
|---|
Printer(byte[] data,
java.io.PrintWriter pw) |
| Modifier and Type | Method and Description |
|---|---|
void |
appendFrame(int pos,
int offsetDelta,
int[] tags,
int[] data)
Invoked if the visited frame is a
append_frame. |
void |
chopFrame(int pos,
int offsetDelta,
int k)
Invoked if the visited frame is a
chop_frame. |
void |
fullFrame(int pos,
int offsetDelta,
int[] localTags,
int[] localData,
int[] stackTags,
int[] stackData)
Invoked if the visited frame is
full_frame. |
static void |
print(StackMapTable smt,
java.io.PrintWriter writer)
Prints the stack table map.
|
private void |
printTypeInfo(int tag,
int data) |
void |
sameFrame(int pos,
int offsetDelta)
Invoked if the visited frame is a
same_frame or
a same_frame_extended. |
void |
sameLocals(int pos,
int offsetDelta,
int stackTag,
int stackData)
Invoked if the visited frame is a
same_locals_1_stack_item_frame
or a same_locals_1_stack_item_frame_extended. |
objectOrUninitialized, parse, size, stackMapFramespublic static void print(StackMapTable smt, java.io.PrintWriter writer)
public void sameFrame(int pos,
int offsetDelta)
StackMapTable.Walkersame_frame or
a same_frame_extended.sameFrame in class StackMapTable.Walkerpos - the position of this frame in the info
field of attribute_info structure.public void sameLocals(int pos,
int offsetDelta,
int stackTag,
int stackData)
StackMapTable.Walkersame_locals_1_stack_item_frame
or a same_locals_1_stack_item_frame_extended.sameLocals in class StackMapTable.Walkerpos - the position.stackTag - stack[0].tag.stackData - stack[0].cpool_index
if the tag is OBJECT,
or stack[0].offset
if the tag is UNINIT.public void chopFrame(int pos,
int offsetDelta,
int k)
StackMapTable.Walkerchop_frame.chopFrame in class StackMapTable.Walkerpos - the position.k - the public void appendFrame(int pos,
int offsetDelta,
int[] tags,
int[] data)
StackMapTable.Walkerappend_frame.appendFrame in class StackMapTable.Walkerpos - the position.tags - locals[i].tag.data - locals[i].cpool_index
or public void fullFrame(int pos,
int offsetDelta,
int[] localTags,
int[] localData,
int[] stackTags,
int[] stackData)
StackMapTable.Walkerfull_frame.fullFrame in class StackMapTable.Walkerpos - the position.localTags - locals[i].taglocalData - locals[i].cpool_index
or locals[i].offsetstackTags - stack[i].tagstackData - stack[i].cpool_index
or stack[i].offsetprivate void printTypeInfo(int tag,
int data)