git.iko.soy/typeable/servant
on master help sign in
Generalise type of `emptyServer` so it can be `Enter`ed
commita3c5f17749398403eb3e1266361a082fb17452a6 authorDavid Turner <dave.c.turner@gmail.com> dateWed 17 May 2017, 05:12 (9 years ago) parentf3ac10a
2 files changed+3−3
servant-server/src/Servant/Server.hs+2−2 servant-server/src/Servant/Server/Internal.hs+1−1
servant-server/src/Servant/Server.hs+2−2
@@ -221,8 +221,8 @@ layoutWithContext p context =
221221--
222222-- >>> import Control.Monad.Reader
223223-- >>> import qualified Control.Category as C
224−-- >>> type ReaderAPI = "ep1" :> Get '[JSON] Int :<|> "ep2" :> Get '[JSON] String :<|> Raw
225−-- >>> let readerServer = return 1797 :<|> ask :<|> Tagged (error "raw server") :: ServerT ReaderAPI (Reader String)
224+-- >>> type ReaderAPI = "ep1" :> Get '[JSON] Int :<|> "ep2" :> Get '[JSON] String :<|> Raw :<|> EmptyAPI
225+-- >>> let readerServer = return 1797 :<|> ask :<|> Tagged (error "raw server") :<|> emptyServer :: ServerT ReaderAPI (Reader String)
226226-- >>> let nt = generalizeNat C.. (runReaderTNat "hi") :: Reader String :~> Handler
227227-- >>> let mainServer = enter nt readerServer :: Server ReaderAPI
228228--
servant-server/src/Servant/Server/Internal.hs+1−1
@@ -537,7 +537,7 @@ instance HasServer api context => HasServer (HttpVersion :> api) context where
537537data EmptyServer = EmptyServer deriving (Typeable, Eq, Show, Bounded, Enum)
538538
539539-- | Server for `EmptyAPI`
540−emptyServer :: Server EmptyAPI
540+emptyServer :: ServerT EmptyAPI m
541541emptyServer = Tagged EmptyServer
542542
543543-- | The server for an `EmptyAPI` is `emptyAPIServer`.