Package org.apache.bcel.generic
Class LineNumberGen
- java.lang.Object
-
- org.apache.bcel.generic.LineNumberGen
-
- All Implemented Interfaces:
java.lang.Cloneable
,InstructionTargeter
public class LineNumberGen extends java.lang.Object implements InstructionTargeter, java.lang.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:
LineNumber
,MethodGen
-
-
Constructor Summary
Constructors Constructor Description LineNumberGen(InstructionHandle ih, int srcLine)
Create a line number.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
clone()
boolean
containsTarget(InstructionHandle ih)
Tests whether this targeter targets the specified instruction handle.InstructionHandle
getInstruction()
LineNumber
getLineNumber()
Gets LineNumber attribute.int
getSourceLine()
void
setInstruction(InstructionHandle instructionHandle)
void
setSourceLine(int srcLine)
void
updateTarget(InstructionHandle oldIh, InstructionHandle newIh)
Replaces the target of this targeter from this old handle to the new handle.
-
-
-
Constructor Detail
-
LineNumberGen
public LineNumberGen(InstructionHandle ih, int srcLine)
Create a line number.- Parameters:
ih
- instruction handle to reference
-
-
Method Detail
-
clone
public java.lang.Object clone()
- Overrides:
clone
in classjava.lang.Object
-
containsTarget
public boolean containsTarget(InstructionHandle ih)
Description copied from interface:InstructionTargeter
Tests whether this targeter targets the specified instruction handle.- Specified by:
containsTarget
in interfaceInstructionTargeter
- Parameters:
ih
- the instruction handle to test.- 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 interfaceInstructionTargeter
- Parameters:
oldIh
- old targetnewIh
- new target
-
-