@@ -5,37 +5,14 @@ namespace FSharpPlus
55/// Additional operations on ValueTask<'T>
66[<RequireQualifiedAccess>]
77module ValueTask =
8-
9- open System.Threading
8+
109 open System.Threading .Tasks
1110
1211 let inline internal (| Succeeded | Canceled | Faulted |) ( t : ValueTask < 'T >) =
1312 if t.IsCompletedSuccessfully then Succeeded t.Result
1413 elif t.IsCanceled then Canceled
15- else Faulted ( t.AsTask() .Exception.InnerExceptions)
16-
17- /// <summary >Creates a <see cref =" ValueTask{TResult} " /> that's completed successfully with the specified result.</summary >
18- /// <typeparam name =" TResult " >The type of the result returned by the task.</typeparam >
19- /// <param name =" result " >The result to store into the completed task.</param >
20- /// <returns >The successfully completed task.</returns >
21- let FromResult < 'TResult > ( result : 'TResult ) = ValueTask< 'TResult> result
22-
23- /// <summary >Creates a <see cref =" ValueTask{TResult} " /> that's completed exceptionally with the specified exception.</summary >
24- /// <typeparam name =" TResult " >The type of the result returned by the task.</typeparam >
25- /// <param name =" exception " >The exception with which to complete the task.</param >
26- /// <returns >The faulted task.</returns >
27- let FromException < 'TResult > ( ``exception`` : exn ) = ValueTask< 'TResult> ( Task.FromException< 'TResult> `` exception `` )
14+ else Faulted ( t.AsTask() .Exception.InnerExceptions)
2815
29- /// <summary >Creates a <see cref =" ValueTask{TResult} " /> that's completed due to cancellation with the specified token.</summary >
30- /// <typeparam name =" TResult " >The type of the result returned by the task.</typeparam >
31- /// <param name =" cancellationToken " >The token with which to complete the task.</param >
32- /// <returns >The canceled task.</returns >
33- let FromCanceled < 'TResult > ( cancellationToken : CancellationToken ) = ValueTask< 'TResult> ( Task.FromCanceled< 'TResult> cancellationToken)
34-
35- /// <summary >Creates a <see cref =" ValueTask{TResult} " /> from a <see cref =" Task{TResult} " />.</summary >
36- /// <param name =" source " >Task workflow.</param >
37- let FromTask < 'TResult > ( source : Task < 'TResult >) = ValueTask< 'TResult> source
38-
3916 let inline internal continueTask ( tcs : TaskCompletionSource < 'Result >) ( x : ValueTask < 't >) ( k : 't -> unit ) =
4017 let f = function
4118 | Succeeded r -> k r
@@ -47,6 +24,8 @@ module ValueTask =
4724 aw.OnCompleted ( fun () -> f x)
4825
4926 /// <summary >Creates a ValueTask workflow from 'source' another, mapping its result with 'f'.</summary >
27+ /// <param name =" f " >The mapping function.</param >
28+ /// <param name =" source " >ValueTask workflow.</param >
5029 let map ( f : 'T -> 'U ) ( source : ValueTask < 'T >) : ValueTask < 'U > =
5130 let tcs = TaskCompletionSource< 'U> ()
5231 continueTask tcs source ( fun x ->
@@ -133,6 +112,6 @@ module ValueTask =
133112
134113
135114 /// Raises an exception in the ValueTask
136- let raise ( e : exn ) = FromException e
115+ let raise ( ``exception`` : exn ) = ValueTask < 'TResult > ( Task. FromException< 'TResult > `` exception `` )
137116
138117#endif
0 commit comments