Safe Haskell | None |
---|---|
Language | Haskell98 |
Implements a data type for constructing and destructing x-www-urlencoded strings. See http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.1
- data URLEncoded
- filter :: ((String, String) -> Bool) -> URLEncoded -> URLEncoded
- class URLShow a where
- class URLEncode a where
- urlEncode :: a -> URLEncoded
- empty :: URLEncoded
- importString :: MonadError e m => String -> m URLEncoded
- importList :: [(String, String)] -> URLEncoded
- importURI :: MonadError e m => URI -> m URLEncoded
- (%=) :: (URLShow a, URLShow b) => a -> b -> URLEncoded
- (%=?) :: (URLShow a, URLShow b) => a -> Maybe b -> URLEncoded
- (%&) :: (URLEncode q1, URLEncode q2) => q1 -> q2 -> URLEncoded
- class AddURLEncoded a where
- null :: URLEncoded -> Bool
- keys :: URLEncoded -> [String]
- lookup :: URLShow a => a -> URLEncoded -> Maybe String
- lookupAll :: URLShow a => a -> URLEncoded -> [String]
- lookup1 :: (URLShow a, MonadError e m) => a -> URLEncoded -> m String
- lookupDefault :: URLShow a => String -> a -> URLEncoded -> String
- pairs :: URLEncoded -> [(String, String)]
- (%!) :: URLShow a => URLEncoded -> a -> Maybe String
- addToURI :: URLEncoded -> URI -> URI
- export :: URLEncoded -> String
Representation of a URL-encoded string
data URLEncoded Source
A container for URLEncoded data
filter :: ((String, String) -> Bool) -> URLEncoded -> URLEncoded Source
Create a URLEncoded object that represents all pairs from the input that match the supplied predicate
Serialize a value into a String for encoding as part of an x-www-urlencoded value
Generate
URLEncoded data with no pairs
importString :: MonadError e m => String -> m URLEncoded Source
Parse this string as x-www-urlencoded
importList :: [(String, String)] -> URLEncoded Source
Import this list of pairs as URLEncoded data
importURI :: MonadError e m => URI -> m URLEncoded Source
(%=) :: (URLShow a, URLShow b) => a -> b -> URLEncoded infixl 8 Source
Create singleton URLEncoded data containing the supplied key and value
:: (URLShow a, URLShow b) | |
=> a | key |
-> Maybe b | value |
-> URLEncoded |
If the second value is Nothing, return empty URLEncoded data. Otherwise return singleton URLEncoded data that contains the given key and value.
(%&) :: (URLEncode q1, URLEncode q2) => q1 -> q2 -> URLEncoded infixr 7 Source
class AddURLEncoded a where Source
Query
null :: URLEncoded -> Bool Source
Is this URLEncoded data empty?
keys :: URLEncoded -> [String] Source
All of the keys from the URLEncoded value, in order, preserving duplicates
lookupAll :: URLShow a => a -> URLEncoded -> [String] Source
Return all values whose keys match the supplied key, in the order they appear in the query. Will return an empty list if no keys match.
lookup1 :: (URLShow a, MonadError e m) => a -> URLEncoded -> m String Source
Return the first value for the given key, or throw an error if the key is not present in the URLEncoded data.
lookupDefault :: URLShow a => String -> a -> URLEncoded -> String Source
pairs :: URLEncoded -> [(String, String)] Source
(%!) :: URLShow a => URLEncoded -> a -> Maybe String infixr 1 Source
Look up a key in a URLEncoded value and return the first matching value, or Nothing if there is no value that matches
Export
addToURI :: URLEncoded -> URI -> URI Source
Add this URL-encoded data to the query part of a URI, after any existing query arguments.
export :: URLEncoded -> String Source
Convert this URLEncoded object into an x-www-urlencoded String (The resulting string is 7-bit clean ASCII, containing only unreserved URI characters and %-encoded values)