Interface ICodeAttribute

All Superinterfaces:
IClassFileAttribute

public interface ICodeAttribute extends IClassFileAttribute
Description of a code attribute as described in the JVM specifications. This interface may be implemented by clients.
Since:
2.0
  • Method Details

    • getMaxLocals

      int getMaxLocals()
      Answer back the max locals value of the code attribute.
      Returns:
      the max locals value of the code attribute
    • getMaxStack

      int getMaxStack()
      Answer back the max stack value of the code attribute.
      Returns:
      the max stack value of the code attribute
    • getLineNumberAttribute

      ILineNumberAttribute getLineNumberAttribute()
      Answer back the line number attribute, if it exists, null otherwise.
      Returns:
      the line number attribute, if it exists, null otherwise
    • getLocalVariableAttribute

      ILocalVariableAttribute getLocalVariableAttribute()
      Answer back the local variable attribute, if it exists, null otherwise.
      Returns:
      the local variable attribute, if it exists, null otherwise
    • getExceptionTable

      IExceptionTableEntry[] getExceptionTable()
      Answer back the array of exception entries, if they are present. An empty array otherwise.
      Returns:
      the array of exception entries, if they are present. An empty array otherwise
    • getBytecodes

      byte[] getBytecodes()
      Answer back the array of bytes, which represents all the opcodes as described in the JVM specifications.
      Returns:
      the array of bytes, which represents all the opcodes as described in the JVM specifications
    • getCodeLength

      long getCodeLength()
      Answer back the length of the bytecode contents.
      Returns:
      the length of the bytecode contents
    • getAttributesCount

      int getAttributesCount()
      Answer back the attribute number of the code attribute.
      Returns:
      the attribute number of the code attribute
    • getAttributes

      IClassFileAttribute[] getAttributes()
      Answer back the collection of all attributes of the field info. It includes the LineNumberAttribute and the LocalVariableTableAttribute. Returns an empty collection if none.
      Returns:
      the collection of all attributes of the field info. It includes the LineNumberAttribute and the LocalVariableTableAttribute. Returns an empty collection if none
    • getExceptionTableLength

      int getExceptionTableLength()
      Answer back the exception table length of the code attribute.
      Returns:
      the exception table length of the code attribute
    • traverse

      void traverse(IBytecodeVisitor visitor) throws ClassFormatException
      Define a Java opcodes walker. All actions are defined in the visitor.
      Parameters:
      visitor - The visitor to use to walk the opcodes.
      Throws:
      ClassFormatException - Exception thrown if the opcodes contain invalid bytes