Skip to content

Instantly share code, notes, and snippets.

@simonewebdesign
Created July 25, 2016 11:04
Show Gist options
  • Save simonewebdesign/bd7ea2a67501b29cfb32cc47e91c4375 to your computer and use it in GitHub Desktop.
Save simonewebdesign/bd7ea2a67501b29cfb32cc47e91c4375 to your computer and use it in GitHub Desktop.
An example of Json.Decoder (Result a b) in Elm
decodeSubmittedReportPayload : Json.Decoder SubmittedReportPayload
decodeSubmittedReportPayload =
Json.object1
SubmittedReportPayload
("report" := decodeReportCredentials)
decodeInvalidReportPayload : Json.Decoder InvalidReportPayload
decodeInvalidReportPayload =
Json.object1
InvalidReportPayload
("validation_messages" := Json.list decodeValidationMessage)
decodeSubmit : Json.Decoder (Result InvalidReportPayload SubmittedReportPayload)
decodeSubmit =
Json.oneOf
[ map Ok decodeSubmittedReportPayload
, map Err decodeInvalidReportPayload
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment