Advertisement
Guest User

list result to result list

a guest
Jul 14th, 2019
269
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
F# 0.50 KB | None | 0 0
  1. let rollupResult s =
  2.     let rec traverse acc current =
  3.         match current with
  4.         | Ok x :: xs->
  5.             traverse (x :: acc) xs
  6.         | Error x :: _ -> Error x
  7.         //because we build the list backwards, reverse at the end to preserve input order.
  8.         | [] -> acc |> List.rev |> Ok
  9.     traverse [] s
  10.    
  11. let testData = [|
  12.     Ok 1
  13.     Ok 2
  14.     //uncomment to see error returned.
  15.     //Error "incorrect"
  16.     Ok 3
  17. |]
  18.  
  19. Array.toList testData
  20. |> rollupResult
  21. |> printfn "%A"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement