Skip to content

Commit 623ad06

Browse files
gustywallymathieu
authored andcommitted
+ (Value)Task.ofResult
1 parent 85696d2 commit 623ad06

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

src/FSharpPlus/Extensions/Task.fs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -536,8 +536,13 @@ module Task =
536536
/// <returns>The resulting Task.</returns>
537537
let ofResult (source: Result<'T, exn>) : Task<'T> =
538538
match source with
539+
#if !NET45
540+
| Ok x -> Task.FromResult x
541+
| Error exn -> Task.FromException<'T> exn
542+
#else
539543
| Ok x -> result x
540544
| Error exn -> raise exn
545+
#endif
541546

542547

543548
/// Workaround to fix signatures without breaking binary compatibility.

src/FSharpPlus/Extensions/ValueTask.fs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,12 @@ module ValueTask =
428428
/// <returns>The resulting Task.</returns>
429429
let ofResult (source: Result<'T, exn>) : ValueTask<'T> =
430430
match source with
431+
#if NET5_0_OR_GREATER
432+
| Ok x -> ValueTask.FromResult x
433+
| Error exn -> ValueTask.FromException<'T> exn
434+
#else
431435
| Ok x -> result x
432436
| Error exn -> raise exn
437+
#endif
433438

434439
#endif

0 commit comments

Comments
 (0)