public int NextChoice(ChoiceRange range) { Debug.Assert(!done); ChoiceTracker c; if (nextChoiceIdx >= choices.Count) { c = new ChoiceTracker(range); choices.Add(c); } else { c = choices[nextChoiceIdx]; //Debug.Assert(c.min == min && c.max == max); } nextChoiceIdx++; return(c.value); }
public ChoiceTracker(int bits) { this.range = new ChoiceRange_Bits(bits); this.index = 0; }
public ChoiceTracker(ChoiceRange range) { this.range = range; this.index = 0; }