/// <summary> /// Gets the specified registered task from the collection. /// </summary> /// <param name="index"> The index of the registered task to be retrieved. </param> /// <returns> /// A <see cref="Task" /> instance that contains the requested context. /// </returns> public Task this[int index] { get { var i = 0; if (v2Coll != null) { if (filter == null) { return(new Task(svc, v2Coll[++index])); } else { var v2te = new V2TaskEnumerator(fld, v2Coll, filter); while (v2te.MoveNext()) { if (i++ == index) { return(v2te.Current); } } } } else { var v1te = new V1TaskEnumerator(svc, filter); while (v1te.MoveNext()) { if (i++ == index) { return(v1te.Current); } } } throw new ArgumentOutOfRangeException(); } }
public Task this[int index] { get { var num = 0; if (_v2Coll != null) { if (_filter == null) { return(new Task(_svc, _v2Coll[++index])); } var enumerator = new V2TaskEnumerator(_fld, _v2Coll, _filter); while (enumerator.MoveNext()) { if (num++ == index) { return(enumerator.Current); } } } else { var enumerator2 = new V1TaskEnumerator(_svc, _filter); while (enumerator2.MoveNext()) { if (num++ == index) { return(enumerator2.Current); } } } throw new ArgumentOutOfRangeException(); } }
/// <summary> /// Gets the specified registered task from the collection. /// </summary> /// <param name="index">The index of the registered task to be retrieved.</param> /// <returns>A <see cref="Task"/> instance that contains the requested context.</returns> public Task this[int index] { get { int i = 0; if (v2Coll != null) { if (filter == null) { return(Task.CreateTask(svc, v2Coll[++index])); } else { V2TaskEnumerator v2te = new V2TaskEnumerator(this.fld, this.v2Coll, this.filter); while (v2te.MoveNext()) { if (i++ == index) { return(v2te.Current); } } } } else { V1TaskEnumerator v1te = new V1TaskEnumerator(this.svc, this.filter); while (v1te.MoveNext()) { if (i++ == index) { return(v1te.Current); } } } throw new ArgumentOutOfRangeException(); } }