-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/

-- | Unicode aware uri-encoding
--   
--   This package allows you to uri encode and uri decode Strings, Texts
--   and ByteString values.
@package uri-encode
@version 1.5.0.7

-- | Unicode aware URI encoding and decoding functions for both String and
--   Text. Although standards are pretty vague about Unicode in URIs most
--   browsers are pretty straightforward when encoding URIs: Encode a text
--   to a UTF-8 string and URI-encode every individual byte (not
--   character).
module Network.URI.Encode

-- | URI encode a String, unicode aware.
encode :: String -> String

-- | URI encode a String, unicode aware, using the predicate to
--   decide which characters are escaped (False means escape).
encodeWith :: (Char -> Bool) -> String -> String

-- | URI encode a Text, unicode aware.
encodeText :: Text -> Text

-- | URI encode a Text, unicode aware, using the predicate to decide
--   which characters are escaped (False means escape).
encodeTextWith :: (Char -> Bool) -> Text -> Text

-- | URI encode a Text into a ByteString, unicode aware.
encodeTextToBS :: Text -> ByteString

-- | URI encode a Text into a ByteString, unicode aware,
--   using the predicate to decide which characters are escaped
--   (False means escape).
encodeTextToBSWith :: (Char -> Bool) -> Text -> ByteString

-- | URI encode a UTF8-encoded ByteString into a
--   ByteString, unicode aware.
encodeByteString :: ByteString -> ByteString

-- | URI encode a UTF8-encoded 'ByteString into a ByteString,
--   unicode aware, using the predicate to decide which characters are
--   escaped (False means escape).
encodeByteStringWith :: (Char -> Bool) -> ByteString -> ByteString

-- | URI decode a String, unicode aware.
decode :: String -> String

-- | URI decode a Text, unicode aware.
decodeText :: Text -> Text

-- | URI decode a ByteString into a Text, unicode aware.
decodeBSToText :: ByteString -> Text

-- | URI decode a ByteString into a UTF8-encoded
--   ByteString, unicode aware.
decodeByteString :: ByteString -> ByteString

-- | Is a character allowed in a URI. Only ASCII alphabetic characters,
--   decimal digits, and - _ . ~ are allowed. This is following RFC 3986.
isAllowed :: Char -> Bool
