|
Network.URI | Portability | non-portable (needs Text.Regex) | Stability | provisional | Maintainer | libraries@haskell.org |
|
|
|
|
Contents |
- The URI type
- Parsing a URI
- Computing relative URIs
- Operations on URI strings
|
|
Description |
The URI library provides utilities for
parsing and manipulating Uniform Resource Identifiers (a more
general form of Uniform Resource Locators, or URLs). URIs are
described in RFC 2396 http://www.faqs.org/rfcs/rfc2396.html.
|
|
Synopsis |
|
|
|
|
The URI type |
|
data URI |
The decomposition of a general universal resource identifier.
For example, for the URI http://www.haskell.org/ghc?query#frag the components are ... | Constructors | | Instances | |
|
|
Parsing a URI |
|
parseURI :: String -> Maybe URI |
Turns a string into a URI. It returns Nothing if the
string isn't a valid URI. |
|
Computing relative URIs |
|
relativeTo :: URI -> URI -> Maybe URI |
Returns a new URI which represents the value of the first URI
relative to the second URI. For example "foo" `relativeTo` "http://bar.org/" = "http://bar.org/foo"
|
|
Operations on URI strings |
|
support for putting strings into URI-friendly
escaped format and getting them back again.
This can't be done transparently, because certain characters
have different meanings in different kinds of URI. |
|
reserved :: Char -> Bool |
Returns True if the character is a "reserved" character in a
URI. To include a literal instance of one of these characters in a
component of a URI, it must be escaped. |
|
unreserved :: Char -> Bool |
Returns True if the character is an "unreserved" character in
a URI. These characters do not need to be escaped in a URI. The
only characters allowed in a URI are either reserved,
unreserved, or an escape sequence (% followed by two hex digits).
|
|
isAllowedInURI :: Char -> Bool |
Returns True if the character is allowed in a URI.
|
|
escapeString |
:: String | the string to process | -> (Char -> Bool) | a predicate which returns False if the character
should be escaped | -> String | | Can be used to make a string valid for use in a URI.
|
|
|
unEscapeString :: String -> String |
Turns all instances of escaped characters in the string back into
literal characters. |
|
Produced by Haddock version 0.3 |