Namespace: FsToolkit.ErrorHandling
Function Signature:
Task<('a -> 'b) voption> -> Task<'a voption> -> Task<'b voption>Take the following function for example
// string -> int
let characterCount (s: string) = s.Lengthlet result =
TaskValueOption.valueSome "foo" // Task<string voption>
|> TaskValueOption.apply (TaskValueOption.valueSome characterCount) // Task<int voption>
// task { ValueSome 3 }let result =
Task.singleton ValueNone // Task<string voption>
|> TaskValueOption.apply (TaskValueOption.valueSome characterCount) // Task<int voption>
// task { ValueNone }let result : Task<int voption> =
TaskValueOption.valueSome "foo" // Task<string voption>
|> TaskValueOption.apply (Task.singleton ValueNone) // Task<int voption>
// task { ValueNone }