Package serp.bytecode
Class IfInstruction
- java.lang.Object
-
- serp.bytecode.Instruction
-
- serp.bytecode.JumpInstruction
-
- serp.bytecode.IfInstruction
-
- All Implemented Interfaces:
BCEntity
,InstructionPtr
,VisitAcceptor
public class IfInstruction extends JumpInstruction
An if instruction such asifnull, ifeq
, etc.- Author:
- Abe White
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
acceptVisit(BCVisitor visit)
Accept a visit from aBCVisitor
, calling the appropriate methods to notify the visitor that it has entered this entity, and to provide it with the proper callbacks for each sub-entity owned by this one.int
getStackChange()
Return the number of stack positions this instruction pushes or pops during its execution.java.lang.String
getTypeName()
-
Methods inherited from class serp.bytecode.JumpInstruction
equalsInstruction, getOffset, getTarget, replaceTarget, setOffset, setTarget, updateTargets
-
Methods inherited from class serp.bytecode.Instruction
getByteIndex, getClassLoader, getCode, getLineNumber, getLogicalStackChange, getName, getOpcode, getPool, getProject, isValid
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface serp.bytecode.InstructionPtr
getCode
-
-
-
-
Method Detail
-
getStackChange
public int getStackChange()
Description copied from class:Instruction
Return the number of stack positions this instruction pushes or pops during its execution.- Overrides:
getStackChange
in classInstruction
- Returns:
- 0 if the stack is not affected by this instruction, a positive number if it pushes onto the stack, and a negative number if it pops from the stack
-
getTypeName
public java.lang.String getTypeName()
-
acceptVisit
public void acceptVisit(BCVisitor visit)
Description copied from interface:VisitAcceptor
Accept a visit from aBCVisitor
, calling the appropriate methods to notify the visitor that it has entered this entity, and to provide it with the proper callbacks for each sub-entity owned by this one.- Specified by:
acceptVisit
in interfaceVisitAcceptor
- Overrides:
acceptVisit
in classJumpInstruction
-
-