Safe Haskell | Safe-Infered |
---|
- type Application m r = Pipe () ByteString m () -> Pipe ByteString Void m () -> IO r
- socketReader :: MonadIO m => Socket -> Pipe () ByteString m ()
- socketWriter :: MonadIO m => Socket -> Pipe ByteString Void m r
- data ServerSettings = ServerSettings {
- serverPort :: Int
- serverHost :: Maybe String
- runTCPServer :: MonadIO m => ServerSettings -> Application m r -> IO r
- data ClientSettings = ClientSettings {
- clientPort :: Int
- clientHost :: String
- runTCPClient :: MonadIO m => ClientSettings -> Application m r -> IO r
Documentation
type Application m r = Pipe () ByteString m () -> Pipe ByteString Void m () -> IO rSource
socketReader :: MonadIO m => Socket -> Pipe () ByteString m ()Source
Stream data from the socket.
socketWriter :: MonadIO m => Socket -> Pipe ByteString Void m rSource
Stream data to the socket.
data ServerSettings Source
Settings for a TCP server. It takes a port to listen on, and an optional hostname to bind to.
ServerSettings | |
|
runTCPServer :: MonadIO m => ServerSettings -> Application m r -> IO rSource
Run an Application
with the given settings. This function will create a
new listening socket, accept connections on it, and spawn a new thread for
each connection.
data ClientSettings Source
Settings for a TCP client, specifying how to connect to the server.
runTCPClient :: MonadIO m => ClientSettings -> Application m r -> IO rSource
Run an Application
by connecting to the specified server.