/// <summary> /// Returns a future to a single value from a data-source; an exception /// is thrown if no values, or multiple values, are encountered. /// </summary> /// <param name="source">The source data-producer.</param> /// <exception cref="InvalidOperationException">Zero or multiple terms are encountered.</exception> public static IFuture <TSource> Single <TSource>(this IDataProducer <TSource> source) { return(source.Single(x => true)); }