gnu.bytecode
Class StackMapTableAttr

java.lang.Object
  extended by gnu.bytecode.Attribute
      extended by gnu.bytecode.MiscAttr
          extended by gnu.bytecode.StackMapTableAttr

public class StackMapTableAttr
extends MiscAttr

Represents a "StackMapTable" attribute, as added in Java 6.


Field Summary
static boolean compressStackMapTable
           
 
Constructor Summary
StackMapTableAttr()
           
StackMapTableAttr(byte[] data, CodeAttr code)
          Add a new StackMapTableAttr to a CodeAttr.
 
Method Summary
 void emitStackMapEntry(Label label, CodeAttr code)
          Emit type state for the given Label.
 Method getMethod()
           
 void print(ClassTypeWriter dst)
           
 void write(java.io.DataOutputStream dstr)
          Write out the contents of the Attribute.
 
Methods inherited from class gnu.bytecode.MiscAttr
getLength, put1, put2, put2, u1, u1, u2, u2
 
Methods inherited from class gnu.bytecode.Attribute
addToFrontOf, assignConstants, assignConstants, count, get, getContainer, getLengthAll, getName, getNameIndex, getNext, isSkipped, setContainer, setName, setNameIndex, setNext, setSkipped, setSkipped, writeAll
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

compressStackMapTable

public static boolean compressStackMapTable
Constructor Detail

StackMapTableAttr

public StackMapTableAttr()

StackMapTableAttr

public StackMapTableAttr(byte[] data,
                         CodeAttr code)
Add a new StackMapTableAttr to a CodeAttr.

Method Detail

getMethod

public Method getMethod()

write

public void write(java.io.DataOutputStream dstr)
           throws java.io.IOException
Write out the contents of the Attribute. Does not write the 6-byte attribute header.

Overrides:
write in class MiscAttr
Throws:
java.io.IOException

emitStackMapEntry

public void emitStackMapEntry(Label label,
                              CodeAttr code)
Emit type state for the given Label. This must be called by strictly increasing position. This is handled automatically by CodeAttr.processFixups().


print

public void print(ClassTypeWriter dst)
Overrides:
print in class MiscAttr