reddit-0.2.1.0: Library for interfacing with Reddit's API

Safe HaskellNone
LanguageHaskell2010

Reddit.Types.Reddit

Documentation

type Reddit a = RedditT IO a Source #

newtype RedditT m a Source #

Constructors

RedditT (FreeT (RedditF m) m a) 

Instances

MonadTrans RedditT Source # 

Methods

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

Monad m => Monad (RedditT m) Source # 

Methods

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

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

return :: a -> RedditT m a #

fail :: String -> RedditT m a #

Monad m => Functor (RedditT m) Source # 

Methods

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

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

Monad m => Applicative (RedditT m) Source # 

Methods

pure :: a -> RedditT m a #

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

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

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

MonadIO m => MonadIO (RedditT m) Source # 

Methods

liftIO :: IO a -> RedditT m a #

data RedditF m a where Source #

Constructors

FailWith :: APIError RedditError -> RedditF m a 
Nest :: RedditT m b -> (Either (APIError RedditError) b -> a) -> RedditF m a 
NestResuming :: RedditT m b -> (Either (APIError RedditError, Maybe (RedditT m b)) b -> a) -> RedditF m a 
ReceiveRoute :: Receivable b => Route -> (b -> a) -> RedditF m a 
RunRoute :: FromJSON b => Route -> (b -> a) -> RedditF m a 
WithBaseURL :: Text -> RedditT m b -> (b -> a) -> RedditF m a 

Instances

Functor (RedditF m) Source # 

Methods

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

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

withBaseURL :: Monad m => Text -> RedditT m a -> RedditT m a Source #