Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > fe020c59895ac11f31b8eb3941ad2f43 > files > 77

ghc-HTTP-devel-4000.1.1-8.fc15.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Network.TCP</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Network-TCP.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Network-TCP.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">HTTP-4000.1.1: A library for client-side HTTP</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>non-portable (not tested)</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Maintainer</th><td>Sigbjorn Finne &lt;sigbjorn.finne@gmail.com&gt;</td></tr></table><p class="caption">Network.TCP</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Some utility functions for working with the Haskell <code>network</code> package. Mostly
 for internal use by the <code>Network.HTTP</code> code, but 
</p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span>  <a href="#t:Connection">Connection</a> </li><li class="src short"><a href="#v:openTCPPort">openTCPPort</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="Network-TCP.html#t:Connection">Connection</a></li><li class="src short"><a href="#v:isConnectedTo">isConnectedTo</a> :: <a href="Network-TCP.html#t:Connection">Connection</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:openTCPConnection">openTCPConnection</a> :: <a href="Network-BufferType.html#t:BufferType">BufferType</a> ty =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty)</li><li class="src short"><a href="#v:socketConnection">socketConnection</a> :: <a href="Network-BufferType.html#t:BufferType">BufferType</a> ty =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/network-2.3.0.2/Network-Socket.html#t:Socket">Socket</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty)</li><li class="src short"><a href="#v:isTCPConnectedTo">isTCPConnectedTo</a> ::  <a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><span class="keyword">data</span>  <a href="#t:HandleStream">HandleStream</a> a</li><li class="src short"><span class="keyword">class</span> <a href="Network-BufferType.html#t:BufferType">BufferType</a> bufType =&gt; <a href="#t:HStream">HStream</a> bufType  <span class="keyword">where</span><ul class="subs"><li><a href="#v:openStream">openStream</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType)</li><li><a href="#v:openSocketStream">openSocketStream</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/network-2.3.0.2/Network-Socket.html#t:Socket">Socket</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType)</li><li><a href="#v:readLine">readLine</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-Stream.html#t:Result">Result</a> bufType)</li><li><a href="#v:readBlock">readBlock</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-Stream.html#t:Result">Result</a> bufType)</li><li><a href="#v:writeBlock">writeBlock</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-Stream.html#t:Result">Result</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>)</li><li><a href="#v:close">close</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li><a href="#v:closeQuick">closeQuick</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li><a href="#v:closeOnEnd">closeOnEnd</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li></ul></li><li class="src short"><span class="keyword">data</span>  <a href="#t:StreamHooks">StreamHooks</a> ty = <a href="#v:StreamHooks">StreamHooks</a> {<ul class="subs"><li><a href="#v:hook_readLine">hook_readLine</a> :: (ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>) -&gt; <a href="Network-Stream.html#t:Result">Result</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li><a href="#v:hook_readBlock">hook_readBlock</a> :: (ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>) -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Stream.html#t:Result">Result</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li><a href="#v:hook_writeBlock">hook_writeBlock</a> :: (ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>) -&gt; ty -&gt; <a href="Network-Stream.html#t:Result">Result</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li><a href="#v:hook_close">hook_close</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li><a href="#v:hook_name">hook_name</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a></li></ul>}</li><li class="src short"><a href="#v:nullHooks">nullHooks</a> ::  <a href="Network-TCP.html#t:StreamHooks">StreamHooks</a> ty</li><li class="src short"><a href="#v:setStreamHooks">setStreamHooks</a> ::  <a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty -&gt; <a href="Network-TCP.html#t:StreamHooks">StreamHooks</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li class="src short"><a href="#v:getStreamHooks">getStreamHooks</a> ::  <a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Network-TCP.html#t:StreamHooks">StreamHooks</a> ty))</li><li class="src short"><a href="#v:hstreamToConnection">hstreamToConnection</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="Network-TCP.html#t:Connection">Connection</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:Connection" class="def">Connection</a>  <a href="src/Network-TCP.html#Connection" class="link">Source</a></p><div class="doc"><p>The <code><a href="Network-TCP.html#t:Connection">Connection</a></code> newtype is a wrapper that allows us to make
 connections an instance of the Stream class, without GHC extensions.
 While this looks sort of like a generic reference to the transport
 layer it is actually TCP specific, which can be seen in the
 implementation of the 'Stream Connection' instance.
</p></div><div class="subs instances"><p id="control.i:Connection" class="caption collapser" onclick="toggleSection('i:Connection')">Instances</p><div id="section.i:Connection" class="show"><table><tr><td class="src"><a href="Network-Stream.html#t:Stream">Stream</a> <a href="Network-TCP.html#t:Connection">Connection</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:openTCPPort" class="def">openTCPPort</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="Network-TCP.html#t:Connection">Connection</a><a href="src/Network-TCP.html#openTCPPort" class="link">Source</a></p><div class="doc"><p><code>openTCPPort uri port</code>  establishes a connection to a remote
 host, using <code><a href="/usr/share/doc/ghc/html/libraries/network-2.3.0.2/Network-BSD.html#v:getHostByName">getHostByName</a></code> which possibly queries the DNS system, hence 
 may trigger a network connection.
</p></div></div><div class="top"><p class="src"><a name="v:isConnectedTo" class="def">isConnectedTo</a> :: <a href="Network-TCP.html#t:Connection">Connection</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a><a href="src/Network-TCP.html#isConnectedTo" class="link">Source</a></p><div class="doc"><p>Checks both that the underlying Socket is connected
 and that the connection peer matches the given
 host name (which is recorded locally).
</p></div></div><div class="top"><p class="src"><a name="v:openTCPConnection" class="def">openTCPConnection</a> :: <a href="Network-BufferType.html#t:BufferType">BufferType</a> ty =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty)<a href="src/Network-TCP.html#openTCPConnection" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:socketConnection" class="def">socketConnection</a> :: <a href="Network-BufferType.html#t:BufferType">BufferType</a> ty =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/network-2.3.0.2/Network-Socket.html#t:Socket">Socket</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty)<a href="src/Network-TCP.html#socketConnection" class="link">Source</a></p><div class="doc"><p><code>socketConnection</code>, like <code>openConnection</code> but using a pre-existing <code><a href="/usr/share/doc/ghc/html/libraries/network-2.3.0.2/Network-Socket.html#t:Socket">Socket</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:isTCPConnectedTo" class="def">isTCPConnectedTo</a> ::  <a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a><a href="src/Network-TCP.html#isTCPConnectedTo" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:HandleStream" class="def">HandleStream</a> a <a href="src/Network-TCP.html#HandleStream" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="Network-BufferType.html#t:BufferType">BufferType</a> bufType =&gt; <a name="t:HStream" class="def">HStream</a> bufType  <span class="keyword">where</span><a href="src/Network-TCP.html#HStream" class="link">Source</a></p><div class="doc"><p><code>HStream</code> overloads the use of <code><a href="Network-TCP.html#t:HandleStream">HandleStream</a></code>s, letting you
 overload the handle operations over the type that is communicated
 across the handle. It comes in handy for <code>Network.HTTP</code> <code>Request</code>
 and <code>Response</code>s as the payload representation isn't fixed, but overloaded.
</p><p>The library comes with instances for <code>ByteString</code>s and <code>String</code>, but
 should you want to plug in your own payload representation, defining
 your own <code>HStream</code> instance _should_ be all that it takes.
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:openStream" class="def">openStream</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType)<a href="src/Network-TCP.html#openStream" class="link">Source</a></p><p class="src"><a name="v:openSocketStream" class="def">openSocketStream</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/network-2.3.0.2/Network-Socket.html#t:Socket">Socket</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType)<a href="src/Network-TCP.html#openSocketStream" class="link">Source</a></p><p class="src"><a name="v:readLine" class="def">readLine</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-Stream.html#t:Result">Result</a> bufType)<a href="src/Network-TCP.html#readLine" class="link">Source</a></p><p class="src"><a name="v:readBlock" class="def">readBlock</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-Stream.html#t:Result">Result</a> bufType)<a href="src/Network-TCP.html#readBlock" class="link">Source</a></p><p class="src"><a name="v:writeBlock" class="def">writeBlock</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="Network-Stream.html#t:Result">Result</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>)<a href="src/Network-TCP.html#writeBlock" class="link">Source</a></p><p class="src"><a name="v:close" class="def">close</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a><a href="src/Network-TCP.html#close" class="link">Source</a></p><p class="src"><a name="v:closeQuick" class="def">closeQuick</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a><a href="src/Network-TCP.html#closeQuick" class="link">Source</a></p><p class="src"><a name="v:closeOnEnd" class="def">closeOnEnd</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> bufType -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a><a href="src/Network-TCP.html#closeOnEnd" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:HStream" class="caption collapser" onclick="toggleSection('i:HStream')">Instances</p><div id="section.i:HStream" class="show"><table><tr><td class="src"><a href="Network-TCP.html#t:HStream">HStream</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="Network-TCP.html#t:HStream">HStream</a> <a href="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.10/Data-ByteString-Lazy.html#t:ByteString">ByteString</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="Network-TCP.html#t:HStream">HStream</a> <a href="/usr/share/doc/ghc/html/libraries/bytestring-0.9.1.10/Data-ByteString.html#t:ByteString">ByteString</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:StreamHooks" class="def">StreamHooks</a> ty <a href="src/Network-TCP.html#StreamHooks" class="link">Source</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:StreamHooks" class="def">StreamHooks</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:hook_readLine" class="def">hook_readLine</a> :: (ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>) -&gt; <a href="Network-Stream.html#t:Result">Result</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:hook_readBlock" class="def">hook_readBlock</a> :: (ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>) -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Int.html#t:Int">Int</a> -&gt; <a href="Network-Stream.html#t:Result">Result</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:hook_writeBlock" class="def">hook_writeBlock</a> :: (ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>) -&gt; ty -&gt; <a href="Network-Stream.html#t:Result">Result</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:hook_close" class="def">hook_close</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:hook_name" class="def">hook_name</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:StreamHooks" class="caption collapser" onclick="toggleSection('i:StreamHooks')">Instances</p><div id="section.i:StreamHooks" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Eq.html#t:Eq">Eq</a> ty =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Eq.html#t:Eq">Eq</a> (<a href="Network-TCP.html#t:StreamHooks">StreamHooks</a> ty)</td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:nullHooks" class="def">nullHooks</a> ::  <a href="Network-TCP.html#t:StreamHooks">StreamHooks</a> ty<a href="src/Network-TCP.html#nullHooks" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:setStreamHooks" class="def">setStreamHooks</a> ::  <a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty -&gt; <a href="Network-TCP.html#t:StreamHooks">StreamHooks</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a><a href="src/Network-TCP.html#setStreamHooks" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:getStreamHooks" class="def">getStreamHooks</a> ::  <a href="Network-TCP.html#t:HandleStream">HandleStream</a> ty -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Maybe.html#t:Maybe">Maybe</a> (<a href="Network-TCP.html#t:StreamHooks">StreamHooks</a> ty))<a href="src/Network-TCP.html#getStreamHooks" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:hstreamToConnection" class="def">hstreamToConnection</a> :: <a href="Network-TCP.html#t:HandleStream">HandleStream</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="Network-TCP.html#t:Connection">Connection</a><a href="src/Network-TCP.html#hstreamToConnection" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.9.2</p></div></body></html>