public override bool MoveNext() { for (int i = this.indices.Length - 1; i >= 0; i--) { if (this.indices[i] < this.Domains[i].Count - 1) { // updating index this.indices[i]++; // reseting the other to zero for(int j = i+1 ; j < this.indices.Length;++j) this.indices[j] = 0; // getting the tuple tuple = new Tuple(); for (int k = 0; k < this.indices.Length; ++k) { object item = this.Domains[k][this.indices[k]]; tuple.Add(item); } return true; } } return false; }
public override bool MoveNext() { for (int i = this.indices.Length - 1; i >= 0; i--) { if (this.indices[i] < this.Domains[i].Count - 1) { // updating index this.indices[i]++; // reseting the other to zero for (int j = i + 1; j < this.indices.Length; ++j) { this.indices[j] = 0; } // getting the tuple tuple = new Tuple(); for (int k = 0; k < this.indices.Length; ++k) { object item = this.Domains[k][this.indices[k]]; tuple.Add(item); } return(true); } } return(false); }