Copyright | (c) 2012 Leon P Smith |
---|---|
License | BSD3 |
Maintainer | Leon P Smith <leon@melding-monads.com> |
Stability | experimental |
Safe Haskell | None |
Language | Haskell98 |
A Postgres array parser and pretty-printer.
- arrayFormat :: Char -> Parser ArrayFormat
- data ArrayFormat
- array :: Char -> Parser [ArrayFormat]
- quoted :: Parser ByteString
- plain :: Char -> Parser ByteString
- fmt :: Char -> ArrayFormat -> ByteString
- delimit :: Char -> [ArrayFormat] -> ByteString
- fmt' :: Bool -> Char -> ArrayFormat -> ByteString
- esc :: ByteString -> ByteString
Documentation
arrayFormat :: Char -> Parser ArrayFormat Source
Parse one of three primitive field formats: array, quoted and plain.
data ArrayFormat Source
array :: Char -> Parser [ArrayFormat] Source
quoted :: Parser ByteString Source
Recognizes a quoted string.
plain :: Char -> Parser ByteString Source
Recognizes a plain string literal, not containing quotes or brackets and not containing the delimiter character.
fmt :: Char -> ArrayFormat -> ByteString Source
Format an array format item, using the delimiter character if the item is itself an array.
delimit :: Char -> [ArrayFormat] -> ByteString Source
Format a list of array format items, inserting the appropriate delimiter between them. When the items are arrays, they will be delimited with commas; otherwise, they are delimited with the passed-in-delimiter.
fmt' :: Bool -> Char -> ArrayFormat -> ByteString Source
Format an array format item, using the delimiter character if the item is
itself an array, optionally applying quoting rules. Creates copies for
safety when used in FromField
instances.
esc :: ByteString -> ByteString Source
Escape a string according to Postgres double-quoted string format.