apiary-0.17.0: Simple and type safe web framework that can be automatically generate API documentation.

Safe HaskellNone
LanguageHaskell2010

Control.Monad.Apiary

Contents

Synopsis

Documentation

data ApiaryT exts prms actM m a Source

most generic Apiary monad. since 0.8.0.0.

Instances

(Monad actM, MonadBase b m) => MonadBase b (ApiaryT exts prms actM m) 
(Monad actM, MonadBaseControl b m) => MonadBaseControl b (ApiaryT exts prms actM m) 
Monad actM => MonadTrans (ApiaryT exts prms actM) 
Monad actM => MonadTransControl (ApiaryT exts prms actM) 
Monad actM => Monad (ApiaryT exts prms actM m) 
Functor (ApiaryT exts prms actM m) 
Monad actM => Applicative (ApiaryT exts prms actM m) 
(Monad actM, MonadIO m) => MonadIO (ApiaryT exts prms actM m) 
data StT (ApiaryT exts prms actM) = StTApiary' {} 
data StM (ApiaryT exts prms actM m) = StMApiary' {} 

server :: Monad m => (Application -> m a) -> EApplication [] m -> m a Source

serverWith :: Monad m => Initializer m [] exts -> (Application -> m a) -> EApplication exts m -> m a Source

runApiaryT :: (Monad actM, Monad m) => (forall b. actM b -> IO b) -> ApiaryConfig -> ApiaryT exts [] actM m () -> EApplication exts m Source

runApiary :: Monad m => ApiaryConfig -> ApiaryT exts [] IO m () -> EApplication exts m Source

getter

apiaryConfig :: Monad actM => ApiaryT exts prms actM m ApiaryConfig Source

apiaryExt :: (Has e exts, Monad actM) => proxy e -> ApiaryT exts prms actM m e Source

execute action

action :: Monad actM => Fn prms (ActionT exts actM ()) -> ApiaryT exts prms actM m () Source

splice ActionT ApiaryT.

action' :: Monad actM => (SList prms -> ActionT exts actM ()) -> ApiaryT exts prms actM m () Source

like action. but not apply arguments. since 0.8.0.0.

middleware

middleware :: Monad actM => Middleware -> ApiaryT exts prms actM m () Source

API documentation

group :: Text -> ApiaryT exts prms actM m () -> ApiaryT exts prms actM m () Source

API document group. since 0.12.0.0.

only top level group recognized.

document :: Text -> ApiaryT exts prms actM m () -> ApiaryT exts prms actM m () Source

add API document. since 0.12.0.0.

It use only filters prior document, so you should be placed document directly in front of action.

precondition :: Html -> ApiaryT exts prms actM m () -> ApiaryT exts prms actM m () Source

add user defined precondition. since 0.13.0.

noDoc :: ApiaryT exts prms actM m () -> ApiaryT exts prms actM m () Source

rpHtml :: Html -> Int -> Html Source

construct Html as route parameter. since 0.13.0.

deprecated

actionWithPreAction :: Monad actM => (SList xs -> ActionT exts actM a) -> Fn xs (ActionT exts actM ()) -> ApiaryT exts xs actM m () Source

Deprecated: use action'

execute action before main action. since 0.4.2.0