Package javassist.bytecode
Class StackMapTable.SimpleCopy
- java.lang.Object
-
- javassist.bytecode.StackMapTable.Walker
-
- javassist.bytecode.StackMapTable.SimpleCopy
-
- Direct Known Subclasses:
StackMapTable.Copier
,StackMapTable.InsertLocal
,StackMapTable.NewRemover
- Enclosing class:
- StackMapTable
static class StackMapTable.SimpleCopy extends StackMapTable.Walker
-
-
Field Summary
Fields Modifier and Type Field Description private StackMapTable.Writer
writer
-
Fields inherited from class javassist.bytecode.StackMapTable.Walker
info, numOfEntries
-
-
Constructor Summary
Constructors Constructor Description SimpleCopy(byte[] data)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
appendFrame(int pos, int offsetDelta, int[] tags, int[] data)
Invoked if the visited frame is aappend_frame
.void
chopFrame(int pos, int offsetDelta, int k)
Invoked if the visited frame is achop_frame
.protected int[]
copyData(int[] tags, int[] data)
protected int
copyData(int tag, int data)
byte[]
doit()
void
fullFrame(int pos, int offsetDelta, int[] localTags, int[] localData, int[] stackTags, int[] stackData)
Invoked if the visited frame isfull_frame
.void
sameFrame(int pos, int offsetDelta)
Invoked if the visited frame is asame_frame
or asame_frame_extended
.void
sameLocals(int pos, int offsetDelta, int stackTag, int stackData)
Invoked if the visited frame is asame_locals_1_stack_item_frame
or asame_locals_1_stack_item_frame_extended
.-
Methods inherited from class javassist.bytecode.StackMapTable.Walker
objectOrUninitialized, parse, size, stackMapFrames
-
-
-
-
Field Detail
-
writer
private StackMapTable.Writer writer
-
-
Method Detail
-
doit
public byte[] doit() throws BadBytecode
- Throws:
BadBytecode
-
sameFrame
public void sameFrame(int pos, int offsetDelta)
Description copied from class:StackMapTable.Walker
Invoked if the visited frame is asame_frame
or asame_frame_extended
.- Overrides:
sameFrame
in classStackMapTable.Walker
- Parameters:
pos
- the position of this frame in theinfo
field ofattribute_info
structure.
-
sameLocals
public void sameLocals(int pos, int offsetDelta, int stackTag, int stackData)
Description copied from class:StackMapTable.Walker
Invoked if the visited frame is asame_locals_1_stack_item_frame
or asame_locals_1_stack_item_frame_extended
.- Overrides:
sameLocals
in classStackMapTable.Walker
- Parameters:
pos
- the position.stackTag
-stack[0].tag
.stackData
-stack[0].cpool_index
if the tag isOBJECT
, orstack[0].offset
if the tag isUNINIT
.
-
chopFrame
public void chopFrame(int pos, int offsetDelta, int k)
Description copied from class:StackMapTable.Walker
Invoked if the visited frame is achop_frame
.- Overrides:
chopFrame
in classStackMapTable.Walker
- Parameters:
pos
- the position.k
- thek
last locals are absent.
-
appendFrame
public void appendFrame(int pos, int offsetDelta, int[] tags, int[] data)
Description copied from class:StackMapTable.Walker
Invoked if the visited frame is aappend_frame
.- Overrides:
appendFrame
in classStackMapTable.Walker
- Parameters:
pos
- the position.tags
-locals[i].tag
.data
-locals[i].cpool_index
orlocals[i].offset
.
-
fullFrame
public void fullFrame(int pos, int offsetDelta, int[] localTags, int[] localData, int[] stackTags, int[] stackData)
Description copied from class:StackMapTable.Walker
Invoked if the visited frame isfull_frame
.- Overrides:
fullFrame
in classStackMapTable.Walker
- Parameters:
pos
- the position.localTags
-locals[i].tag
localData
-locals[i].cpool_index
orlocals[i].offset
stackTags
-stack[i].tag
stackData
-stack[i].cpool_index
orstack[i].offset
-
copyData
protected int copyData(int tag, int data)
-
copyData
protected int[] copyData(int[] tags, int[] data)
-
-