data-result-1.0: Data types for returning results distinguishable by types.

Safe HaskellNone
LanguageHaskell2010

Data.Result

Documentation

fromOk :: Ok a -> a Source

class MaybeResult m where Source

Methods

maybeResult :: m a -> Maybe a Source

class IfOk m where Source

Methods

ifOk :: m a -> (a -> b) -> b -> b Source

Instances

class Check a ok Source

type family Asserted e check Source

Equations

Asserted e True = Ok 
Asserted e False = Error e 

class Assert e ok where Source

Methods

assert :: Proxy e -> Proxy ok -> a -> Asserted e ok a Source