package jetbrains.mps.baseLanguage.behavior; /*Generated by MPS */ import org.jetbrains.annotations.NotNull; import org.jetbrains.mps.openapi.model.SNode; public final class NextProgramPoint { @NotNull private final SNode myNode; private final boolean myIsAfter; private final boolean myWillJump; private NextProgramPoint(@NotNull SNode succeedingNode, boolean after, boolean willJump) { myNode = succeedingNode; myIsAfter = after; myWillJump = willJump; } @NotNull public SNode getSucceedingNode() { return myNode; } public boolean isAfter() { return myIsAfter; } public boolean willJump() { return myWillJump; } public static NextProgramPoint continueAfter(SNode node) { return new NextProgramPoint(node, true, true); } public static NextProgramPoint continueAt(SNode node, boolean willJump) { return new NextProgramPoint(node, false, willJump); } public NextProgramPoint withJump() { return new NextProgramPoint(myNode, myIsAfter, true); } }