bind
Function Signature
('okInput -> TaskValidation<'okOutput, 'error>) -> TaskValidation<'okInput, 'error> -> TaskValidation<'okOutput, 'error>Examples
// string -> TaskValidation<int, string>
let tryParseIntTask (s: string) =
task {
match System.Int32.TryParse(s) with
| true, i -> return Ok i
| false, _ -> return Error [ $"'%s{s}' is not a valid integer" ]
}Example 1
let result =
TaskValidation.ok "42"
|> TaskValidation.bind tryParseIntTask
// task { Ok 42 }Example 2
Example 3
Last updated