Safe Haskell | None |
---|---|
Language | Haskell2010 |
Since: 0.14.1
Synopsis
- data AsServerT (m :: * -> *)
- type AsServer = AsServerT Handler
- genericServe :: forall routes. ( HasServer ( ToServantApi routes) '[], GenericServant routes AsServer , Server ( ToServantApi routes) ~ ToServant routes AsServer ) => routes AsServer -> Application
- genericServeT :: forall (routes :: * -> *) (m :: * -> *). ( GenericServant routes ( AsServerT m), GenericServant routes AsApi , HasServer ( ToServantApi routes) '[], ServerT ( ToServantApi routes) m ~ ToServant routes ( AsServerT m)) => ( forall a. m a -> Handler a) -> routes ( AsServerT m) -> Application
- genericServeTWithContext :: forall (routes :: * -> *) (m :: * -> *) (ctx :: [*]). ( GenericServant routes ( AsServerT m), GenericServant routes AsApi , HasServer ( ToServantApi routes) ctx, HasContextEntry (ctx .++ DefaultErrorFormatters ) ErrorFormatters , ServerT ( ToServantApi routes) m ~ ToServant routes ( AsServerT m)) => ( forall a. m a -> Handler a) -> routes ( AsServerT m) -> Context ctx -> Application
- genericServer :: GenericServant routes AsServer => routes AsServer -> ToServant routes AsServer
- genericServerT :: GenericServant routes ( AsServerT m) => routes ( AsServerT m) -> ToServant routes ( AsServerT m)
Documentation
data AsServerT (m :: * -> *) Source #
A type that specifies that an API record contains a server implementation.
genericServe :: forall routes. ( HasServer ( ToServantApi routes) '[], GenericServant routes AsServer , Server ( ToServantApi routes) ~ ToServant routes AsServer ) => routes AsServer -> Application Source #
Transform a record of routes into a WAI
Application
.
:: forall (routes :: * -> *) (m :: * -> *). ( GenericServant routes ( AsServerT m), GenericServant routes AsApi , HasServer ( ToServantApi routes) '[], ServerT ( ToServantApi routes) m ~ ToServant routes ( AsServerT m)) | |
=> ( forall a. m a -> Handler a) |
|
-> routes ( AsServerT m) |
your record full of request handlers |
-> Application |
Transform a record of routes with custom monad into a WAI
Application
,
by providing a transformation to bring each handler back in the
Handler
monad.
genericServeTWithContext Source #
:: forall (routes :: * -> *) (m :: * -> *) (ctx :: [*]). ( GenericServant routes ( AsServerT m), GenericServant routes AsApi , HasServer ( ToServantApi routes) ctx, HasContextEntry (ctx .++ DefaultErrorFormatters ) ErrorFormatters , ServerT ( ToServantApi routes) m ~ ToServant routes ( AsServerT m)) | |
=> ( forall a. m a -> Handler a) |
|
-> routes ( AsServerT m) |
your record full of request handlers |
-> Context ctx |
the
|
-> Application |
Transform a record of routes with custom monad into a WAI
Application
,
while using the given
Context
to serve the application (contexts are typically
used by auth-related combinators in servant, e.g to hold auth checks) and the given
transformation to map all the handlers back to the
Handler
monad.
genericServer :: GenericServant routes AsServer => routes AsServer -> ToServant routes AsServer Source #
Transform a record of endpoints into a
Server
.
genericServerT :: GenericServant routes ( AsServerT m) => routes ( AsServerT m) -> ToServant routes ( AsServerT m) Source #
Transform a record of endpoints into a
.
ServerT
m
You can see an example usage of this function in the Servant Cookbook .