hwm-0.0.1: Haskell Workspace Manager - Orchestrates Stack, Cabal, and HLS
Safe HaskellNone
LanguageHaskell2010

HWM.Core.Result

Documentation

data Result er a Source #

Constructors

Success 

Fields

Failure 

Fields

Instances

Instances details
MonadError er (Result er) Source # 
Instance details

Defined in HWM.Core.Result

Methods

throwError :: er -> Result er a #

catchError :: Result er a -> (er -> Result er a) -> Result er a #

Applicative (Result er) Source # 
Instance details

Defined in HWM.Core.Result

Methods

pure :: a -> Result er a #

(<*>) :: Result er (a -> b) -> Result er a -> Result er b #

liftA2 :: (a -> b -> c) -> Result er a -> Result er b -> Result er c #

(*>) :: Result er a -> Result er b -> Result er b #

(<*) :: Result er a -> Result er b -> Result er a #

Functor (Result er) Source # 
Instance details

Defined in HWM.Core.Result

Methods

fmap :: (a -> b) -> Result er a -> Result er b #

(<$) :: a -> Result er b -> Result er a #

Monad (Result er) Source # 
Instance details

Defined in HWM.Core.Result

Methods

(>>=) :: Result er a -> (a -> Result er b) -> Result er b #

(>>) :: Result er a -> Result er b -> Result er b #

return :: a -> Result er a #

MonadIssue (Result Issue) Source # 
Instance details

Defined in HWM.Core.Result

newtype ResultT (m :: Type -> Type) a Source #

Constructors

ResultT 

Fields

Instances

Instances details
MonadTrans ResultT Source # 
Instance details

Defined in HWM.Core.Result

Methods

lift :: Monad m => m a -> ResultT m a #

Monad m => MonadError Issue (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

Methods

throwError :: Issue -> ResultT m a #

catchError :: ResultT m a -> (Issue -> ResultT m a) -> ResultT m a #

MonadIO m => MonadIO (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

Methods

liftIO :: IO a -> ResultT m a #

Applicative m => Applicative (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

Methods

pure :: a -> ResultT m a #

(<*>) :: ResultT m (a -> b) -> ResultT m a -> ResultT m b #

liftA2 :: (a -> b -> c) -> ResultT m a -> ResultT m b -> ResultT m c #

(*>) :: ResultT m a -> ResultT m b -> ResultT m b #

(<*) :: ResultT m a -> ResultT m b -> ResultT m a #

Functor m => Functor (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

Methods

fmap :: (a -> b) -> ResultT m a -> ResultT m b #

(<$) :: a -> ResultT m b -> ResultT m a #

Monad m => Monad (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

Methods

(>>=) :: ResultT m a -> (a -> ResultT m b) -> ResultT m b #

(>>) :: ResultT m a -> ResultT m b -> ResultT m b #

return :: a -> ResultT m a #

Monad m => MonadIssue (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

MonadUI m => MonadUI (ResultT m) Source # 
Instance details

Defined in HWM.Runtime.UI

data Issue Source #

Instances

Instances details
IsString Issue Source # 
Instance details

Defined in HWM.Core.Result

Methods

fromString :: String -> Issue #

Show Issue Source # 
Instance details

Defined in HWM.Core.Result

Methods

showsPrec :: Int -> Issue -> ShowS #

show :: Issue -> String #

showList :: [Issue] -> ShowS #

Eq Issue Source # 
Instance details

Defined in HWM.Core.Result

Methods

(==) :: Issue -> Issue -> Bool #

(/=) :: Issue -> Issue -> Bool #

Ord Issue Source # 
Instance details

Defined in HWM.Core.Result

Methods

compare :: Issue -> Issue -> Ordering #

(<) :: Issue -> Issue -> Bool #

(<=) :: Issue -> Issue -> Bool #

(>) :: Issue -> Issue -> Bool #

(>=) :: Issue -> Issue -> Bool #

max :: Issue -> Issue -> Issue #

min :: Issue -> Issue -> Issue #

MonadError Issue ConfigT Source # 
Instance details

Defined in HWM.Domain.ConfigT

Methods

throwError :: Issue -> ConfigT a #

catchError :: ConfigT a -> (Issue -> ConfigT a) -> ConfigT a #

Monad m => MonadError Issue (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

Methods

throwError :: Issue -> ResultT m a #

catchError :: ResultT m a -> (Issue -> ResultT m a) -> ResultT m a #

MonadIssue (Result Issue) Source # 
Instance details

Defined in HWM.Core.Result

class MonadIssue (m :: Type -> Type) where Source #

Methods

injectIssue :: Issue -> m () Source #

catchIssues :: m a -> m (Maybe Severity, a) Source #

mapIssue :: (Issue -> Issue) -> m a -> m a Source #

Instances

Instances details
MonadIssue ConfigT Source # 
Instance details

Defined in HWM.Domain.ConfigT

MonadIssue (Result Issue) Source # 
Instance details

Defined in HWM.Core.Result

Monad m => MonadIssue (ResultT m) Source # 
Instance details

Defined in HWM.Core.Result

data Severity Source #

Instances

Instances details
Show Severity Source # 
Instance details

Defined in HWM.Core.Result

Eq Severity Source # 
Instance details

Defined in HWM.Core.Result

Ord Severity Source # 
Instance details

Defined in HWM.Core.Result