public override IEnumerable <TResult2> Select <TResult2>(Func <TResult, TResult2> selector)
 {
     return(new Enumerable.WhereSelectEnumerableIterator <TSource, TResult2>(this.source, this.predicate, Enumerable.CombineSelectors <TSource, TResult, TResult2>(this.selector, selector)));
 }