Copyright | (c) 2012 Leon P Smith |
---|---|
License | BSD3 |
Maintainer | Leon P Smith <leon@melding-monads.com> |
Stability | experimental |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
A Postgres array parser and pretty-printer.
Synopsis
- 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 #
Instances
Show ArrayFormat Source # | |
Defined in Database.PostgreSQL.Simple.Arrays showsPrec :: Int -> ArrayFormat -> ShowS # show :: ArrayFormat -> String # showList :: [ArrayFormat] -> ShowS # | |
Eq ArrayFormat Source # | |
Defined in Database.PostgreSQL.Simple.Arrays (==) :: ArrayFormat -> ArrayFormat -> Bool # (/=) :: ArrayFormat -> ArrayFormat -> Bool # | |
Ord ArrayFormat Source # | |
Defined in Database.PostgreSQL.Simple.Arrays compare :: ArrayFormat -> ArrayFormat -> Ordering # (<) :: ArrayFormat -> ArrayFormat -> Bool # (<=) :: ArrayFormat -> ArrayFormat -> Bool # (>) :: ArrayFormat -> ArrayFormat -> Bool # (>=) :: ArrayFormat -> ArrayFormat -> Bool # max :: ArrayFormat -> ArrayFormat -> ArrayFormat # min :: ArrayFormat -> ArrayFormat -> ArrayFormat # |
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.