package com.coderising.jvm.engine;
import com.coderising.jvm.method.Method;
public class ExecutionResult {
public static final int RUN_NEXT_CMD = 1;
public static final int JUMP = 2;
public static final int EXIT_CURRENT_FRAME = 3;
public static final int PAUSE_AND_RUN_NEW_FRAME = 4;
private int nextAction = RUN_NEXT_CMD;
private int nextCmdOffset = 0;
private Method nextMethod;
public Method getNextMethod() {
return nextMethod;
}
public void setNextMethod(Method nextMethod) {
this.nextMethod = nextMethod;
}
public void setNextAction(int action){
this.nextAction = action;
}
public boolean isPauseAndRunNewFrame(){
return this.nextAction == PAUSE_AND_RUN_NEW_FRAME;
}
public boolean isExitCurrentFrame(){
return this.nextAction == EXIT_CURRENT_FRAME;
}
public boolean isRunNextCmd(){
return this.nextAction == RUN_NEXT_CMD;
}
public boolean isJump(){
return this.nextAction == JUMP;
}
public int getNextCmdOffset() {
return nextCmdOffset;
}
public void setNextCmdOffset(int nextCmdOffset) {
this.nextCmdOffset = nextCmdOffset;
}
}