rest-client-0.5.2.3: Utility library for use in generated API client libraries.

Safe HaskellNone
LanguageHaskell98

Rest.Client.Base

Documentation

data ApiInfo Source #

Constructors

ApiInfo 

newtype ApiState Source #

Constructors

ApiState 

Fields

newtype ApiT m a Source #

Constructors

ApiT 

Instances

MonadTrans ApiT Source # 

Methods

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

MonadTransControl ApiT Source # 

Associated Types

type StT (ApiT :: (* -> *) -> * -> *) a :: * #

Methods

liftWith :: Monad m => (Run ApiT -> m a) -> ApiT m a #

restoreT :: Monad m => m (StT ApiT a) -> ApiT m a #

MonadBaseControl v m => MonadBaseControl v (ApiT m) Source # 

Associated Types

type StM (ApiT m :: * -> *) a :: * #

Methods

liftBaseWith :: (RunInBase (ApiT m) v -> v a) -> ApiT m a #

restoreM :: StM (ApiT m) a -> ApiT m a #

MonadBase b m => MonadBase b (ApiT m) Source # 

Methods

liftBase :: b α -> ApiT m α #

Monad m => Monad (ApiT m) Source # 

Methods

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

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

return :: a -> ApiT m a #

fail :: String -> ApiT m a #

Functor m => Functor (ApiT m) Source # 

Methods

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

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

Monad m => Applicative (ApiT m) Source # 

Methods

pure :: a -> ApiT m a #

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

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

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

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

MonadIO m => MonadIO (ApiT m) Source # 

Methods

liftIO :: IO a -> ApiT m a #

MonadThrow m => MonadThrow (ApiT m) Source # 

Methods

throwM :: Exception e => e -> ApiT m a #

MonadCatch m => MonadCatch (ApiT m) Source # 

Methods

catch :: Exception e => ApiT m a -> (e -> ApiT m a) -> ApiT m a #

(MonadIO m, MonadThrow m, MonadBase IO m, Functor m, Applicative m) => MonadResource (ApiT m) Source # 

Methods

liftResourceT :: ResourceT IO a -> ApiT m a #

(MonadBaseControl IO m, Monad m, Functor m, MonadBase IO m, MonadIO m, MonadThrow m) => ApiStateC (ApiT m) Source # 
type StT ApiT a Source # 
type StM (ApiT m) a Source # 
type StM (ApiT m) a = ComposeSt ApiT m a

type Api = ApiT IO Source #

class (MonadResource m, MonadBaseControl IO m, Monad m, Functor m, MonadBase IO m) => ApiStateC m where Source #

Minimal complete definition

getApiState, putApiState, askApiInfo

Instances

ApiStateC m => ApiStateC (ListT m) Source # 
(MonadBaseControl IO m, Monad m, Functor m, MonadBase IO m, MonadIO m, MonadThrow m) => ApiStateC (ApiT m) Source # 
(Monoid w, ApiStateC m) => ApiStateC (WriterT w m) Source # 
ApiStateC m => ApiStateC (StateT s m) Source # 
(Error e, ApiStateC m) => ApiStateC (ErrorT e m) Source # 
ApiStateC m => ApiStateC (ExceptT e m) Source # 
ApiStateC m => ApiStateC (ReaderT * r m) Source # 
(Monoid w, ApiStateC m) => ApiStateC (RWST r w s m) Source # 

run :: String -> ApiT IO a -> IO a Source #

data ApiResponse e a Source #

Instances

Functor (ApiResponse e) Source # 

Methods

fmap :: (a -> b) -> ApiResponse e a -> ApiResponse e b #

(<$) :: a -> ApiResponse e b -> ApiResponse e a #

(Show e, Show a) => Show (ApiResponse e a) Source # 

Methods

showsPrec :: Int -> ApiResponse e a -> ShowS #

show :: ApiResponse e a -> String #

showList :: [ApiResponse e a] -> ShowS #