public int CompareTo(ProgramCounter pc) { int result; result = methodNumber.CompareTo(pc.methodNumber); if (result != 0) return result; else return nextBlock.CompareTo(pc.nextBlock); }
public bool Equals(ProgramCounter pc) { return (methodNumber == pc.methodNumber && nextBlock == pc.nextBlock); }
public ProgramCounterTuple(ProgramCounter[] counters) { pcs = counters; }
public ProgramCounterTuple ProgramCounters() { ProgramCounter[] pcs = new ProgramCounter[stateImpl.NumProcesses]; for (int i = 0; i < stateImpl.NumProcesses; i++) { ZingMethod topOfStack = stateImpl.GetProcess(i).TopOfStack; if (topOfStack == null) pcs[i] = new ProgramCounter(); else pcs[i] = new ProgramCounter(topOfStack); } return new ProgramCounterTuple(pcs); }