diff --git a/src/FSharp.Control.TaskSeq/TaskSeq.fsi b/src/FSharp.Control.TaskSeq/TaskSeq.fsi index acb4274d..1aa838cd 100644 --- a/src/FSharp.Control.TaskSeq/TaskSeq.fsi +++ b/src/FSharp.Control.TaskSeq/TaskSeq.fsi @@ -48,6 +48,7 @@ module TaskSeq = /// /// Returns the length of the sequence of all items for which the returns true. /// This operation requires the whole sequence to be evaluated and should not be used on potentially infinite sequences. + /// If is asynchronous, consider using . /// /// /// A function to test whether an item in the input sequence should be included in the count. @@ -58,7 +59,7 @@ module TaskSeq = /// /// Returns the length of the sequence of all items for which the returns true. /// This operation requires the whole sequence to be evaluated and should not be used on potentially infinite sequences. - /// If does not need to be asynchronous, consider using . + /// If is synchronous, consider using . /// /// /// A function to test whether an item in the input sequence should be included in the count. @@ -279,6 +280,7 @@ module TaskSeq = /// /// The input resize array. /// The resulting task sequence. + /// Thrown when the input resize array is null. val ofResizeArray: source: ResizeArray<'T> -> taskSeq<'T> /// @@ -374,6 +376,7 @@ module TaskSeq = /// /// /// The input task sequence. + /// The resulting task sequence. /// Thrown when the input sequence is null. /// Thrown when the function is unable to cast an item to the target type. val unbox<'U when 'U: struct> : source: taskSeq -> taskSeq<'U> @@ -384,6 +387,7 @@ module TaskSeq = /// /// /// The input task sequence. + /// The resulting task sequence. /// Thrown when the input sequence is null. /// Thrown when the function is unable to cast an item to the target type. val cast: source: taskSeq -> taskSeq<'U> @@ -395,6 +399,7 @@ module TaskSeq = /// /// A function to apply to each element of the task sequence. /// The input task sequence. + /// A . /// Thrown when the input sequence is null. val iter: action: ('T -> unit) -> source: taskSeq<'T> -> Task @@ -406,6 +411,7 @@ module TaskSeq = /// /// A function to apply to each element of the task sequence that can also access the current index. /// The input task sequence. + /// A . /// Thrown when the input sequence is null. val iteri: action: (int -> 'T -> unit) -> source: taskSeq<'T> -> Task @@ -416,6 +422,7 @@ module TaskSeq = /// /// An asynchronous function to apply to each element of the task sequence. /// The input task sequence. + /// A . /// Thrown when the input sequence is null. val iterAsync: action: ('T -> #Task) -> source: taskSeq<'T> -> Task @@ -427,6 +434,7 @@ module TaskSeq = /// /// An asynchronous function to apply to each element of the task sequence that can also access the current index. /// The input task sequence. + /// A . /// Thrown when the input sequence is null. val iteriAsync: action: (int -> 'T -> #Task) -> source: taskSeq<'T> -> Task @@ -565,7 +573,7 @@ module TaskSeq = /// /// /// The input task sequence. - /// The first element of the task sequence, or None. + /// The first element of the task sequence, or . /// Thrown when the input task sequence is null. val tryHead: source: taskSeq<'T> -> Task<'T option> @@ -585,7 +593,7 @@ module TaskSeq = /// /// /// The input task sequence. - /// The input task sequence minus the first element, or None. + /// The input task sequence minus the first element, or . /// Thrown when the input task sequence is null. val tryTail: source: taskSeq<'T> -> Task option> @@ -653,7 +661,7 @@ module TaskSeq = /// /// /// The input task sequence. - /// The only element of the singleton task sequence, or None. + /// The only element of the singleton task sequence, or . /// Thrown when the input task sequence is null. val tryExactlyOne: source: taskSeq<'T> -> Task<'T option> @@ -662,111 +670,184 @@ module TaskSeq = /// /// /// The input task sequence. - /// The only element of the singleton task sequence, or None. + /// The only element of the singleton task sequence, or . /// Thrown when the input task sequence is null. /// Thrown when the input sequence does not contain precisely one element. val exactlyOne: source: taskSeq<'T> -> Task<'T> /// /// Applies the given function to each element of the task sequence. Returns - /// a sequence comprised of the results "x" for each element where - /// the function returns . + /// a sequence comprised of the results where the function returns . /// If is asynchronous, consider using . /// + /// + /// A function to transform items of type into options of type . + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. val choose: chooser: ('T -> 'U option) -> source: taskSeq<'T> -> taskSeq<'U> /// - /// Applies the given asynchronous function to each element of the task sequence. Returns - /// a sequence comprised of the results "x" for each element where - /// the function returns . - /// If does not need to be asynchronous, consider using . + /// Applies the given asynchronous function to each element of the task sequence. + /// Returns a sequence comprised of the results where the function returns a result + /// of . + /// If is synchronous, consider using . /// + /// + /// An asynchronous function to transform items of type into options of type . + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. val chooseAsync: chooser: ('T -> #Task<'U option>) -> source: taskSeq<'T> -> taskSeq<'U> /// /// Returns a new collection containing only the elements of the collection - /// for which the given function returns . + /// for which the given function returns . /// If is asynchronous, consider using . /// + /// + /// A function to test whether an item in the input sequence should be included in the output or not. + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. val filter: predicate: ('T -> bool) -> source: taskSeq<'T> -> taskSeq<'T> /// - /// Yields items from the source while the function returns . - /// The first result concludes consumption of the source. + /// Returns a new collection containing only the elements of the collection + /// for which the given function returns . + /// If is synchronous, consider using . + /// + /// + /// An asynchronous function to test whether an item in the input sequence should be included in the output or not. + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. + val filterAsync: predicate: ('T -> #Task) -> source: taskSeq<'T> -> taskSeq<'T> + + /// + /// Returns a sequence that, when iterated, yields elements of the underlying sequence while the + /// given function returns , and then returns no further elements. + /// The first element where the predicate returns is not included in the resulting sequence + /// (see also ). /// If is asynchronous, consider using . /// + /// + /// A function that evaluates to false when no more items should be returned. + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. val takeWhile: predicate: ('T -> bool) -> source: taskSeq<'T> -> taskSeq<'T> /// - /// Yields items from the source while the asynchronous function returns . - /// The first result concludes consumption of the source. - /// If does not need to be asynchronous, consider using . + /// Returns a sequence that, when iterated, yields elements of the underlying sequence while the + /// given asynchronous function returns , and then returns no further elements. + /// The first element where the predicate returns is not included in the resulting sequence + /// (see also ). + /// If is synchronous, consider using . /// + /// + /// An asynchronous function that evaluates to false when no more items should be returned. + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. val takeWhileAsync: predicate: ('T -> #Task) -> source: taskSeq<'T> -> taskSeq<'T> /// - /// Yields items from the source while the function returns . - /// The first result concludes consumption of the source, but is included in the result. + /// Returns a sequence that, when iterated, yields elements of the underlying sequence until the given + /// function returns , returns that element + /// and then returns no further elements (see also ). This function returns + /// at least one element of a non-empty sequence, or the empty task sequence if the input is empty. /// If is asynchronous, consider using . - /// If the final item is not desired, consider using . /// + /// + /// A function that evaluates to false when no more items should be returned. + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. val takeWhileInclusive: predicate: ('T -> bool) -> source: taskSeq<'T> -> taskSeq<'T> /// - /// Yields items from the source while the asynchronous function returns . - /// The first result concludes consumption of the source, but is included in the result. - /// If does not need to be asynchronous, consider using . - /// If the final item is not desired, consider using . + /// Returns a sequence that, when iterated, yields elements of the underlying sequence until the given + /// asynchronous function returns , returns that element + /// and then returns no further elements (see also ). This function returns + /// at least one element of a non-empty sequence, or the empty task sequence if the input is empty. + /// If is synchronous, consider using . /// + /// + /// An asynchronous function that evaluates to false when no more items should be returned. + /// The input task sequence. + /// The resulting task sequence. + /// Thrown when the input task sequence is null. val takeWhileInclusiveAsync: predicate: ('T -> #Task) -> source: taskSeq<'T> -> taskSeq<'T> /// - /// Returns a new collection containing only the elements of the collection - /// for which the given asynchronous function returns . - /// If does not need to be asynchronous, consider using . - /// - val filterAsync: predicate: ('T -> #Task) -> source: taskSeq<'T> -> taskSeq<'T> - - /// - /// Applies the given function to successive elements of the task sequence - /// in , returning the first result where the function returns . + /// Applies the given function to successive elements, returning the first result where + /// the function returns . /// If is asynchronous, consider using . /// + /// A function to transform items of type into options of type . + /// The input task sequence. + /// The chosen element or . + /// Thrown when the input task sequence is null. val tryPick: chooser: ('T -> 'U option) -> source: taskSeq<'T> -> Task<'U option> /// - /// Applies the given asynchronous function to successive elements of the task sequence - /// in , returning the first result where the function returns . - /// If does not need to be asynchronous, consider using . + /// Applies the given asynchronous function to successive elements, returning the first result where + /// the function returns . + /// If is synchronous, consider using . /// + /// An asynchronous function to transform items of type into options of type . + /// The input task sequence. + /// The chosen element or . + /// Thrown when the input task sequence is null. val tryPickAsync: chooser: ('T -> #Task<'U option>) -> source: taskSeq<'T> -> Task<'U option> /// - /// Returns the first element of the task sequence in for which the given function - /// returns . Returns if no such element exists. + /// Returns the first element for which the given function returns + /// . Returns if no such element exists. /// If is asynchronous, consider using . /// + /// + /// A function that evaluates to a when given an item in the sequence. + /// The input task sequence. + /// The found element or . + /// Thrown when the input task sequence is null. val tryFind: predicate: ('T -> bool) -> source: taskSeq<'T> -> Task<'T option> /// - /// Returns the first element of the task sequence in for which the given asynchronous function - /// returns . Returns if no such element exists. - /// If does not need to be asynchronous, consider using . + /// Returns the first element for which the given asynchronous function returns + /// . Returns if no such element exists. + /// If is synchronous, consider using . /// + /// + /// An asynchronous function that evaluates to a when given an item in the sequence. + /// The input task sequence. + /// The found element or . + /// Thrown when the input task sequence is null. val tryFindAsync: predicate: ('T -> #Task) -> source: taskSeq<'T> -> Task<'T option> /// - /// Returns the index, starting from zero, of the task sequence in for which the given function - /// returns . Returns if no such element exists. + /// Returns the index, starting from zero for which the given function returns + /// . Returns if no such element exists. /// If is asynchronous, consider using . /// + /// + /// A function that evaluates to a when given an item in the sequence. + /// The input task sequence. + /// The found element or . + /// Thrown when the input task sequence is null. val tryFindIndex: predicate: ('T -> bool) -> source: taskSeq<'T> -> Task /// - /// Returns the index, starting from zero, of the task sequence in for which the given asynchronous function - /// returns . Returns if no such element exists. - /// If does not need to be asynchronous, consider using . + /// Returns the index, starting from zero for which the given asynchronous function returns + /// . Returns if no such element exists. + /// If is synchronous, consider using . /// + /// + /// An asynchronous function that evaluates to a when given an item in the sequence. + /// The input task sequence. + /// The found element or . + /// Thrown when the input task sequence is null. val tryFindIndexAsync: predicate: ('T -> #Task) -> source: taskSeq<'T> -> Task @@ -782,7 +863,7 @@ module TaskSeq = /// /// Applies the given asynchronous function to successive elements of the task sequence /// in , returning the first result where the function returns . - /// If does not need to be asynchronous, consider using . + /// If is synchronous, consider using . /// Thrown when every item of the sequence /// evaluates to when the given function is applied. /// @@ -800,7 +881,7 @@ module TaskSeq = /// /// Returns the first element of the task sequence in for which the given /// asynchronous function returns . - /// If does not need to be asynchronous, consider using . + /// If is synchronous, consider using . /// /// Thrown if no element returns when /// evaluated by the function. @@ -818,7 +899,7 @@ module TaskSeq = /// /// Returns the index, starting from zero, of the task sequence in for which the given /// asynchronous function returns . - /// If does not need to be asynchronous, consider using . + /// If is synchronous, consider using . /// /// /// Thrown if no element returns when @@ -920,6 +1001,6 @@ module TaskSeq = /// /// Applies the asynchronous function to each element in the task sequence, /// threading an accumulator argument of type through the computation. - /// If the accumulator function does not need to be asynchronous, consider using . + /// If the accumulator function is synchronous, consider using . /// val foldAsync: folder: ('State -> 'T -> #Task<'State>) -> state: 'State -> source: taskSeq<'T> -> Task<'State>