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 |
Represents a multipart HTTP message body, parsed according to the syntax of RFC 2046. Of particular interest to HTTP are literalmultipartbyte-ranges<literal> and literalmultipartform-data<literal>.
Although the headers of a #SoupMultipart body part will contain the full headers from that body part, libsoup does not interpret them according to MIME rules. For example, each body part is assumed to have "binary" Content-Transfer-Encoding, even if its headers explicitly state otherwise. In other words, don't try to use #SoupMultipart for handling real MIME multiparts.
- newtype Multipart = Multipart (ForeignPtr Multipart)
- noMultipart :: Maybe Multipart
- data MultipartAppendFormFileMethodInfo
- multipartAppendFormFile :: MonadIO m => Multipart -> Text -> Text -> Text -> Buffer -> m ()
- data MultipartAppendFormStringMethodInfo
- multipartAppendFormString :: MonadIO m => Multipart -> Text -> Text -> m ()
- data MultipartAppendPartMethodInfo
- multipartAppendPart :: MonadIO m => Multipart -> MessageHeaders -> Buffer -> m ()
- data MultipartFreeMethodInfo
- multipartFree :: MonadIO m => Multipart -> m ()
- data MultipartGetLengthMethodInfo
- multipartGetLength :: MonadIO m => Multipart -> m Int32
- data MultipartGetPartMethodInfo
- multipartGetPart :: MonadIO m => Multipart -> Int32 -> m (Bool, MessageHeaders, Buffer)
- multipartNew :: MonadIO m => Text -> m Multipart
- multipartNewFromMessage :: MonadIO m => MessageHeaders -> MessageBody -> m (Maybe Multipart)
- data MultipartToMessageMethodInfo
- multipartToMessage :: MonadIO m => Multipart -> MessageHeaders -> MessageBody -> m ()
Exported types
Methods
multipartAppendFormFile
data MultipartAppendFormFileMethodInfo Source
((~) * signature (Text -> Text -> Text -> Buffer -> m ()), MonadIO m) => MethodInfo * MultipartAppendFormFileMethodInfo Multipart signature |
multipartAppendFormString
data MultipartAppendFormStringMethodInfo Source
((~) * signature (Text -> Text -> m ()), MonadIO m) => MethodInfo * MultipartAppendFormStringMethodInfo Multipart signature |
multipartAppendPart
data MultipartAppendPartMethodInfo Source
((~) * signature (MessageHeaders -> Buffer -> m ()), MonadIO m) => MethodInfo * MultipartAppendPartMethodInfo Multipart signature |
multipartAppendPart :: MonadIO m => Multipart -> MessageHeaders -> Buffer -> m () Source
multipartFree
data MultipartFreeMethodInfo Source
((~) * signature (m ()), MonadIO m) => MethodInfo * MultipartFreeMethodInfo Multipart signature |
multipartFree :: MonadIO m => Multipart -> m () Source
multipartGetLength
data MultipartGetLengthMethodInfo Source
((~) * signature (m Int32), MonadIO m) => MethodInfo * MultipartGetLengthMethodInfo Multipart signature |
multipartGetLength :: MonadIO m => Multipart -> m Int32 Source
multipartGetPart
data MultipartGetPartMethodInfo Source
((~) * signature (Int32 -> m (Bool, MessageHeaders, Buffer)), MonadIO m) => MethodInfo * MultipartGetPartMethodInfo Multipart signature |
multipartGetPart :: MonadIO m => Multipart -> Int32 -> m (Bool, MessageHeaders, Buffer) Source
multipartNew
multipartNew :: MonadIO m => Text -> m Multipart Source
multipartNewFromMessage
multipartNewFromMessage :: MonadIO m => MessageHeaders -> MessageBody -> m (Maybe Multipart) Source
multipartToMessage
data MultipartToMessageMethodInfo Source
((~) * signature (MessageHeaders -> MessageBody -> m ()), MonadIO m) => MethodInfo * MultipartToMessageMethodInfo Multipart signature |
multipartToMessage :: MonadIO m => Multipart -> MessageHeaders -> MessageBody -> m () Source