EN
PréludeChargé par défaut — aucun import nécessaire.

Opérations sur Result

Synopsis
mapOk : (a -> b) -> Result e a -> Result e b

Transforme la valeur de succès, en laissant un Error intact. mapOk f (Ok x) = Ok (f x) ; mapOk f (Error e) = Error e

mapError : (e -> f) -> Result e a -> Result f a

Transforme la valeur d'erreur, en laissant un Ok intact.

andThen : (a -> Result e b) -> Result e a -> Result e b

Enchaîne un calcul faillible : exécute f sur la valeur de succès, court-circuite sur le premier Error. C'est le bind monadique de Result e. xs |> andThen f se lit de gauche à droite.

result : (e -> c) -> (a -> c) -> Result e a -> c

Élimine un Result : fournir un traitement pour chaque côté (l'erreur d'abord). result onError onOk r réduit r à une seule valeur.

withDefault : a -> Result e a -> a

La valeur de succès, ou une valeur par défaut si c'était un Error.

toMaybe : Result e a -> Maybe a

Oublie l'erreur, en ne gardant que la valeur de succès optionnelle.

okOr : e -> Maybe a -> Result e a

Transforme une valeur optionnelle en un Result, en utilisant e comme erreur pour Nothing.