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 Detail

      • 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