Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
A #SoupMessage request or response body.
Note that while length always reflects the full length of the
message body,
data is normally %NULL, and will only be filled in
after soup_message_body_flatten() is called. For client-side
messages, this automatically happens for the response body after it
has been fully read, unless you set the
%SOUP_MESSAGE_OVERWRITE_CHUNKS flags. Likewise, for server-side
messages, the request body is automatically filled in after being
read.
As an added bonus, when data is filled in, it is always terminated
with a '\0' byte (which is not reflected in
length).
- newtype MessageBody = MessageBody (ForeignPtr MessageBody)
- newZeroMessageBody :: MonadIO m => m MessageBody
- noMessageBody :: Maybe MessageBody
- data MessageBodyAppendMethodInfo
- messageBodyAppend :: MonadIO m => MessageBody -> ByteString -> m ()
- data MessageBodyAppendBufferMethodInfo
- messageBodyAppendBuffer :: MonadIO m => MessageBody -> Buffer -> m ()
- data MessageBodyCompleteMethodInfo
- messageBodyComplete :: MonadIO m => MessageBody -> m ()
- data MessageBodyFlattenMethodInfo
- messageBodyFlatten :: MonadIO m => MessageBody -> m Buffer
- data MessageBodyFreeMethodInfo
- messageBodyFree :: MonadIO m => MessageBody -> m ()
- data MessageBodyGetAccumulateMethodInfo
- messageBodyGetAccumulate :: MonadIO m => MessageBody -> m Bool
- data MessageBodyGetChunkMethodInfo
- messageBodyGetChunk :: MonadIO m => MessageBody -> Int64 -> m (Maybe Buffer)
- data MessageBodyGotChunkMethodInfo
- messageBodyGotChunk :: MonadIO m => MessageBody -> Buffer -> m ()
- messageBodyNew :: MonadIO m => m MessageBody
- data MessageBodySetAccumulateMethodInfo
- messageBodySetAccumulate :: MonadIO m => MessageBody -> Bool -> m ()
- data MessageBodyTruncateMethodInfo
- messageBodyTruncate :: MonadIO m => MessageBody -> m ()
- data MessageBodyWroteChunkMethodInfo
- messageBodyWroteChunk :: MonadIO m => MessageBody -> Buffer -> m ()
- messageBodyClearData :: MonadIO m => MessageBody -> m ()
- messageBodyData :: AttrLabelProxy "data"
- messageBodyReadData :: MonadIO m => MessageBody -> m (Maybe Text)
- messageBodyWriteData :: MonadIO m => MessageBody -> CString -> m ()
- messageBodyLength :: AttrLabelProxy "length"
- messageBodyReadLength :: MonadIO m => MessageBody -> m Int64
- messageBodyWriteLength :: MonadIO m => MessageBody -> Int64 -> m ()
Exported types
newtype MessageBody Source
newZeroMessageBody :: MonadIO m => m MessageBody Source
Construct a MessageBody
struct initialized to zero.
Methods
messageBodyAppend
data MessageBodyAppendMethodInfo Source
((~) * signature (ByteString -> m ()), MonadIO m) => MethodInfo * MessageBodyAppendMethodInfo MessageBody signature |
messageBodyAppend :: MonadIO m => MessageBody -> ByteString -> m () Source
messageBodyAppendBuffer
data MessageBodyAppendBufferMethodInfo Source
((~) * signature (Buffer -> m ()), MonadIO m) => MethodInfo * MessageBodyAppendBufferMethodInfo MessageBody signature |
messageBodyAppendBuffer :: MonadIO m => MessageBody -> Buffer -> m () Source
messageBodyComplete
data MessageBodyCompleteMethodInfo Source
((~) * signature (m ()), MonadIO m) => MethodInfo * MessageBodyCompleteMethodInfo MessageBody signature |
messageBodyComplete :: MonadIO m => MessageBody -> m () Source
messageBodyFlatten
data MessageBodyFlattenMethodInfo Source
((~) * signature (m Buffer), MonadIO m) => MethodInfo * MessageBodyFlattenMethodInfo MessageBody signature |
messageBodyFlatten :: MonadIO m => MessageBody -> m Buffer Source
messageBodyFree
data MessageBodyFreeMethodInfo Source
((~) * signature (m ()), MonadIO m) => MethodInfo * MessageBodyFreeMethodInfo MessageBody signature |
messageBodyFree :: MonadIO m => MessageBody -> m () Source
messageBodyGetAccumulate
data MessageBodyGetAccumulateMethodInfo Source
((~) * signature (m Bool), MonadIO m) => MethodInfo * MessageBodyGetAccumulateMethodInfo MessageBody signature |
messageBodyGetAccumulate :: MonadIO m => MessageBody -> m Bool Source
messageBodyGetChunk
data MessageBodyGetChunkMethodInfo Source
((~) * signature (Int64 -> m (Maybe Buffer)), MonadIO m) => MethodInfo * MessageBodyGetChunkMethodInfo MessageBody signature |
messageBodyGetChunk :: MonadIO m => MessageBody -> Int64 -> m (Maybe Buffer) Source
messageBodyGotChunk
data MessageBodyGotChunkMethodInfo Source
((~) * signature (Buffer -> m ()), MonadIO m) => MethodInfo * MessageBodyGotChunkMethodInfo MessageBody signature |
messageBodyGotChunk :: MonadIO m => MessageBody -> Buffer -> m () Source
messageBodyNew
messageBodyNew :: MonadIO m => m MessageBody Source
messageBodySetAccumulate
data MessageBodySetAccumulateMethodInfo Source
((~) * signature (Bool -> m ()), MonadIO m) => MethodInfo * MessageBodySetAccumulateMethodInfo MessageBody signature |
messageBodySetAccumulate :: MonadIO m => MessageBody -> Bool -> m () Source
messageBodyTruncate
data MessageBodyTruncateMethodInfo Source
((~) * signature (m ()), MonadIO m) => MethodInfo * MessageBodyTruncateMethodInfo MessageBody signature |
messageBodyTruncate :: MonadIO m => MessageBody -> m () Source
messageBodyWroteChunk
data MessageBodyWroteChunkMethodInfo Source
((~) * signature (Buffer -> m ()), MonadIO m) => MethodInfo * MessageBodyWroteChunkMethodInfo MessageBody signature |
messageBodyWroteChunk :: MonadIO m => MessageBody -> Buffer -> m () Source
Properties
Data
messageBodyClearData :: MonadIO m => MessageBody -> m () Source
messageBodyData :: AttrLabelProxy "data" Source
messageBodyReadData :: MonadIO m => MessageBody -> m (Maybe Text) Source
messageBodyWriteData :: MonadIO m => MessageBody -> CString -> m () Source
Length
messageBodyLength :: AttrLabelProxy "length" Source
messageBodyReadLength :: MonadIO m => MessageBody -> m Int64 Source
messageBodyWriteLength :: MonadIO m => MessageBody -> Int64 -> m () Source