gnu.bytecode
Class LocalVarsAttr
public class LocalVarsAttr
addToFrontOf , assignConstants , assignConstants , count , get , getContainer , getLength , getLengthAll , getName , getNameIndex , getNext , isSkipped , print , setContainer , setName , setNameIndex , setNext , setSkipped , setSkipped , write , writeAll |
current_scope
public Scope current_scope
LocalVarsAttr
public LocalVarsAttr(CodeAttr code)
Add a new LocalVarsAttr to a CodeAttr.
LocalVarsAttr
public LocalVarsAttr(Method method)
Create, but don't link into method.code's attributes list (yet).
assignConstants
public void assignConstants(ClassType cl)
Add any needed constant pool entries for this Attribute.
Overridden by sub-classes.
Do any other cleanup needed before writing out a .class file.
- assignConstants in interface Attribute
enterScope
public void enterScope(Scope scope)
getCount
public final int getCount()
getLength
public final int getLength()
Return the length of the attribute in bytes.
Does not include the 6-byte header (for the name_index and the length).
- getLength in interface Attribute
getMethod
public final Method getMethod()
isEmpty
public final boolean isEmpty()
preserveVariablesUpto
public void preserveVariablesUpto(Scope scope)
Mark scopes upto specified scope as 'preserved'.
This means that the local variable slots are not available for reuse
when the scope exits. The effected scopes are all ancestor scopes from
the current scope (inclusive) upto the specified scope (exclusive).
write
public void write(DataOutputStream dstr)
throws java.io.IOException
Write out the contents of the Attribute.
Does not write the 6-byte attribute header.
- write in interface Attribute