- itrConfig :: Config
- , itrRemoteHost :: HostName
- , itrRequest :: Maybe Request
- , itrResponse :: TVar (Maybe Response)
-
- , itrRequestHasBody :: TVar Bool
- , itrRequestIsChunked :: TVar Bool
- , itrExpectedContinue :: TVar Bool
-
- , itrReqChunkLength :: TVar (Maybe Int)
- , itrReqChunkRemaining :: TVar (Maybe Int)
- , itrReqChunkIsOver :: TVar Bool
- , itrReqBodyWanted :: TVar (Maybe Int)
- , itrReqBodyWasteAll :: TVar Bool
- , itrReceivedBody :: TVar ByteString -- Resource が受領した部分は削除される
-
- , itrWillReceiveBody :: TVar Bool
- , itrWillChunkBody :: TVar Bool
- , itrWillDiscardBody :: TVar Bool
- , itrWillClose :: TVar Bool
-
- , itrBodyToSend :: TVar ByteString
- , itrBodyIsNull :: TVar Bool
-
- , itrState :: TVar InteractionState
-
- , itrWroteContinue :: TVar Bool
- , itrWroteHeader :: TVar Bool
+ itrConfig ∷ !Config
+ , itrLocalPort ∷ !PortNumber
+ , itrRemoteAddr ∷ !SockAddr
+ , itrRemoteCert ∷ !(Maybe X509)
+ , itrResourcePath ∷ !(Maybe [Ascii])
+ , itrRequest ∷ !(TVar (Maybe Request))
+ , itrResponse ∷ !(TVar Response)
+
+ , itrRequestHasBody ∷ !(TVar Bool)
+ , itrRequestIsChunked ∷ !(TVar Bool)
+ , itrExpectedContinue ∷ !(TVar Bool)
+
+ , itrReqChunkLength ∷ !(TVar (Maybe Int))
+ , itrReqChunkRemaining ∷ !(TVar (Maybe Int))
+ , itrReqChunkIsOver ∷ !(TVar Bool)
+ , itrReqBodyWanted ∷ !(TVar (Maybe Int))
+ , itrReqBodyWasteAll ∷ !(TVar Bool)
+ , itrReceivedBody ∷ !(TVar (Seq BS.ByteString))
+
+ , itrWillReceiveBody ∷ !(TVar Bool)
+ , itrWillChunkBody ∷ !(TVar Bool)
+ , itrWillDiscardBody ∷ !(TVar Bool)
+ , itrWillClose ∷ !(TVar Bool)
+
+ , itrBodyToSend ∷ !(TVar (Seq BS.ByteString))
+ , itrBodyIsNull ∷ !(TVar Bool)
+
+ , itrState ∷ !(TVar InteractionState)
+
+ , itrWroteContinue ∷ !(TVar Bool)
+ , itrWroteHeader ∷ !(TVar Bool)