colchis-0.1.0.0: src/Network/Colchis/Transport.hs
{-# LANGUAGE Rank2Types #-}
module Network.Colchis.Transport (
Transport(..)
) where
import Data.Aeson
import Control.Monad.IO.Class
import Control.Monad.Trans.Except
import Pipes.Core
{-|
A pipes `Server` waiting for a request, ready to be composed with `+>>` or `>+>`.
`Transport`s send requests over the wire and receive the responses.
-}
type Transport t m = (MonadIO m) => forall r. Value -> Server Value Value (t m) r