| Copyright | © 2015 Patryk Zadarnowski <pat@jantar.org> |
|---|---|
| License | BSD3 |
| Maintainer | pat@jantar.org |
| Stability | experimental |
| Portability | portable |
| Safe Haskell | Safe |
| Language | Haskell2010 |
Pipes.CSV.Encoder
Description
Streaming CSV file decoder compliant with RFC 4180. All fields are quoted except for short fields consisting entirely of “safe” ASCII characters, i.e., printable 7-bit characters other than quote and comma. The maximum length of an unquoted field is supplied explicitly to the encoder, which allows us to decide whether a given field requires quoting without unbounded lookahead.
- encodeCSV :: Monad m => Int -> Pipe (Cell ByteString.ByteString) ByteString.ByteString m ()
- encodeLazyCSV :: Monad m => Int -> Pipe (Cell Lazy.ByteString) ByteString.ByteString m ()
Documentation
encodeCSV :: Monad m => Int -> Pipe (Cell ByteString.ByteString) ByteString.ByteString m () Source
encodeCSV n is an infinite pipe that converts a stream
of cells into a fragmented strict representation of of a CSV file,
unconditionally quoting any field values with length greater than n.
encodeLazyCSV :: Monad m => Int -> Pipe (Cell Lazy.ByteString) ByteString.ByteString m () Source
encodeLazyCSV n is an infinite pipe that converts a stream
of cells into a fragmented lazy representation of of a CSV file,
unconditionally quoting any field values with length greater than n.