Class Label


  • public class Label
    extends Object
    A position in the bytecode of a method. Labels are used for jump, goto, and switch instructions, and for try catch blocks. A label designates the instruction that is just after. Note however that there can be other elements between a label and the instruction it designates (such as other labels, stack map frames, line numbers, etc.).
    Author:
    Eric Bruneton
    • Field Detail

      • info

        public Object info
        A user managed state associated with this label. Warning: this field is used by the ASM tree package. In order to use it with the ASM tree package you must override the getLabelNode method in MethodNode.
    • Constructor Detail

      • Label

        public Label()
        Constructs a new label.
    • Method Detail

      • getOffset

        public int getOffset()
        Returns the bytecode offset corresponding to this label. This offset is computed from the start of the method's bytecode. This method is intended for Attribute sub classes, and is normally not needed by class generators or adapters.
        Returns:
        the bytecode offset corresponding to this label.
        Throws:
        IllegalStateException - if this label is not resolved yet.
      • toString

        public String toString()
        Returns a string representation of this label.
        Overrides:
        toString in class Object
        Returns:
        a string representation of this label.