Class LineNumberGen

java.lang.Object
org.apache.bcel.generic.LineNumberGen
All Implemented Interfaces:
Cloneable, InstructionTargeter

public class LineNumberGen extends Object implements InstructionTargeter, Cloneable
This class represents a line number within a method, i.e., give an instruction a line number corresponding to the source code line.
See Also:
  • Field Details

  • Constructor Details

    • LineNumberGen

      public LineNumberGen(InstructionHandle ih, int srcLine)
      Create a line number.
      Parameters:
      ih - instruction handle to reference
  • Method Details

    • clone

      public Object clone()
      Overrides:
      clone in class Object
    • containsTarget

      public boolean containsTarget(InstructionHandle ih)
      Description copied from interface: InstructionTargeter
      Checks whether this targeter targets the specified instruction handle.
      Specified by:
      containsTarget in interface InstructionTargeter
      Returns:
      true, if ih is target of this line number
    • getInstruction

      public InstructionHandle getInstruction()
    • getLineNumber

      public LineNumber getLineNumber()
      Gets LineNumber attribute. This relies on that the instruction list has already been dumped to byte code or that the 'setPositions' methods has been called for the instruction list.
    • getSourceLine

      public int getSourceLine()
    • setInstruction

      public void setInstruction(InstructionHandle instructionHandle)
    • setSourceLine

      public void setSourceLine(int srcLine)
    • updateTarget

      public void updateTarget(InstructionHandle oldIh, InstructionHandle newIh)
      Description copied from interface: InstructionTargeter
      Replaces the target of this targeter from this old handle to the new handle.
      Specified by:
      updateTarget in interface InstructionTargeter
      Parameters:
      oldIh - old target
      newIh - new target