-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Library for building servers with IterIO
--
-- This module contains a set of generic building blocks for building
-- servers with IterIO.
@package iterio-server
@version 0.0
-- | Generic building blocks for creating TCP Servers based on
-- IterIO
module Data.IterIO.Server.TCPServer
-- | TCPServer holds all the information necessary to run bind to a
-- sock and respond to TCP requests from the network.
data TCPServer inp m out
-- | Runs a TCPServer in a loop.
runTCPServer :: (ListLikeIO inp e, ListLikeIO out e, ChunkData inp, ChunkData out, HasFork m) => TCPServer inp m out -> m ()
-- | Creates a simple HTTP server from an HTTPRequestHandler.
simpleHttpServer :: HasFork m => PortNumber -> HttpRequestHandler m () -> TCPServer ByteString m ByteString
-- | Creates a TCPServer that echoes each line from the client until
-- EOF.
echoServer :: HasFork m => PortNumber -> TCPServer String m String
instance Show (TCPServer inp m out)