public static SupercedableTaskState <TSource, TResult> CheckSupercede(SupercedableTaskState <TSource, TResult> current, TSource source, Func <TSource, CancellationToken, TResult> function) { if (current == null || current.ShouldBeSuperceded(source)) { return(ForceSupercede(current, source, function)); } return(current); }
public static SupercedableTaskState <TSource, TResult> CheckSupercede(SupercedableTaskState <TSource, TResult> current, TSource source, TResult value) { if (current == null || current.ShouldBeSuperceded(source, value)) { return(ForceSupercede(current, source, value)); } return(current); }