dataenc-0.14.0.7: Data encoding library

Copyright | (c) 2009 Magnus Therning
License | BSD3
Safe Haskell | Safe-Inferred
Language | Haskell98

Codec.Binary.QuotedPrintable

Description

Implementation of Quoted-Printable based on RFC 2045 (http://tools.ietf.org/html/rfc2045).

This encoding encodes _everything_ that is passed in, it will not try to guess the native line ending for your architecture. In other words, if you are using this to encode text you need to split it into separate lines before encoding and chopping it up.

Further documentation and information can be found at http://www.haskell.org/haskellwiki/Library/Data_encoding.

Synopsis

- data EncIncData
  - = EChunk [Word8]
  - | EDone
- data EncIncRes i
  - = EPart i (EncIncData -> EncIncRes i)
  - | EFinal i
- encodeInc :: EncIncData -> EncIncRes String
- encode :: [Word8] -> String
- data DecIncData i
  - = DChunk i
  - | DDone
- data DecIncRes i
  - = DPart [Word8] (DecIncData i -> DecIncRes i)
  - | DFinal [Word8] i
  - | DFail [Word8] i
- decodeInc :: DecIncData String -> DecIncRes String
- decode :: String -> Maybe [Word8]
- chop :: Int -> String -> [String]
- unchop :: [String] -> String

# Documentation

data EncIncData #

Data type for the incremental encoding functions.

Constructors

EChunk [Word8] | a chunk of data to be encoded
EDone | the signal to the encoder that the stream of data is ending

data EncIncRes i #

Data type for the result of calling the incremental encoding functions.

Constructors

EPart i (EncIncData -> EncIncRes i) | a partial result together with the continuation to use for further encoding
EFinal i | the final result of encoding (the response to `EDone`)

encodeInc :: EncIncData -> EncIncRes String #

Incremental encoder function.

encode :: [Word8] -> String #

Encode data.

data DecIncData i #

Data type for the incremental decoding functions.

Constructors

DChunk i | a chunk of data to be decoded
DDone | the signal to the decoder that the stream of data is ending

data DecIncRes i #

Data type for the result of calling the incremental encoding functions.

Constructors

DPart [Word8] (DecIncData i -> DecIncRes i) | a partial result together with the continuation to user for further decoding
DFinal [Word8] i | the final result of decoding (the response to `DDone`)
DFail [Word8] i | a partial result for a failed decoding, together with the remainder of the data passed in so far

decodeInc :: DecIncData String -> DecIncRes String #

Incremental decoder function.

decode :: String -> Maybe [Word8] #

Decode data.

chop #

Arguments

:: Int | length of individual lines (values `< 4` are ignored)
-> String |
-> [String] |

Chop up a string in parts.

unchop :: [String] -> String #

Concatenate the list of strings into one long string.