apply
Namespace: FsToolkit.ErrorHandling
Function Signature:
Async<('a -> 'b) option> -> Async<'a option>
-> Async<'b option>
Examples
Take the following function for example
// string -> int
let characterCount (s: string) = s.Length
Example 1
let result =
AsyncOption.some "foo" // Async<string option>
|> AsyncOption.apply (AsyncOption.some characterCount) // Async<int option>
// async { Some 3 }
Example 2
let result =
Async.singleton None // Async<string option>
|> AsyncOption.apply (AsyncOption.some characterCount) // Async<int option>
// async { None }
Example 3
let result : Async<int option> =
AsyncOption.some "foo" // Async<string option>
|> AsyncOption.apply (Async.singleton None) // Async<int option>
// async { None }
Last updated