| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Debian.URI
Synopsis
- data URIAuth = URIAuth {
- uriUserInfo :: String
- uriRegName :: String
- uriPort :: String
- data URI = URI {}
- nullURI :: URI
- parseURI :: String -> Maybe URI
- parseURIReference :: String -> Maybe URI
- parseRelativeReference :: String -> Maybe URI
- parseAbsoluteURI :: String -> Maybe URI
- uriToString :: (String -> String) -> URI -> ShowS
- data URIError
- uriSchemeLens :: Lens' URI String
- uriAuthorityLens :: Lens' URI (Maybe URIAuth)
- uriPathLens :: Lens' URI String
- uriQueryLens :: Lens' URI String
- uriFragmentLens :: Lens' URI String
- newtype URI' = URI' String
- fromURI' :: URI' -> URI
- toURI' :: URI -> URI'
- readURI' :: String -> Maybe URI'
- showURI :: URI -> String
- parseURIReference' :: (HasURIError e, MonadError e m) => String -> m URI
- parseURI' :: (HasURIError e, MonadError e m) => String -> m URI
- parseAbsoluteURI' :: (HasURIError e, MonadError e m) => String -> m URI
- parseRelativeReference' :: (HasURIError e, MonadError e m) => String -> m URI
- parseURIUnsafe :: String -> URI
- appendURI :: MonadError URIError m => URI -> URI -> m URI
- appendURIs :: (Foldable t, MonadError URIError m) => t URI -> m URI
- parentURI :: URI -> URI
- uriToString' :: URI -> String
- class HasParseError e where
- fromParseError :: ParseError -> e
- class HasURIError e where
- fromURIError :: URIError -> e
- prop_print_parse :: URI -> Bool
- prop_append_singleton :: URI -> Bool
Documentation
Type for authority value within a URI
Constructors
| URIAuth | |
Fields
| |
Instances
| NFData URIAuth | |||||
Defined in Network.URI | |||||
| Data URIAuth | |||||
Defined in Network.URI Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> URIAuth -> c URIAuth Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c URIAuth Source # toConstr :: URIAuth -> Constr Source # dataTypeOf :: URIAuth -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c URIAuth) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c URIAuth) Source # gmapT :: (forall b. Data b => b -> b) -> URIAuth -> URIAuth Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> URIAuth -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> URIAuth -> r Source # gmapQ :: (forall d. Data d => d -> u) -> URIAuth -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> URIAuth -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> URIAuth -> m URIAuth Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> URIAuth -> m URIAuth Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> URIAuth -> m URIAuth Source # | |||||
| Generic URIAuth | |||||
Defined in Network.URI Associated Types
| |||||
| Show URIAuth | |||||
| Eq URIAuth | |||||
| Ord URIAuth | |||||
| Lift URIAuth | |||||
| type Rep URIAuth | |||||
Defined in Network.URI type Rep URIAuth = D1 ('MetaData "URIAuth" "Network.URI" "network-uri-2.6.4.2-BXV0MtFcaF6BxSkElkpvb1" 'False) (C1 ('MetaCons "URIAuth" 'PrefixI 'True) (S1 ('MetaSel ('Just "uriUserInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Just "uriRegName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "uriPort") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)))) | |||||
Represents a general universal resource identifier using its component parts.
For example, for the URI
foo://anonymous@www.haskell.org:42/ghc?query#frag
the components are:
Constructors
| URI | |
Instances
| NFData URI | |||||
Defined in Network.URI | |||||
| Data URI | |||||
Defined in Network.URI Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> URI -> c URI Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c URI Source # toConstr :: URI -> Constr Source # dataTypeOf :: URI -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c URI) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c URI) Source # gmapT :: (forall b. Data b => b -> b) -> URI -> URI Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> URI -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> URI -> r Source # gmapQ :: (forall d. Data d => d -> u) -> URI -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> URI -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> URI -> m URI Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> URI -> m URI Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> URI -> m URI Source # | |||||
| Generic URI | |||||
Defined in Network.URI Associated Types
| |||||
| Show URI | |||||
| Eq URI | |||||
| Ord URI | |||||
| Lift URI | |||||
| type Rep URI | |||||
Defined in Network.URI type Rep URI = D1 ('MetaData "URI" "Network.URI" "network-uri-2.6.4.2-BXV0MtFcaF6BxSkElkpvb1" 'False) (C1 ('MetaCons "URI" 'PrefixI 'True) ((S1 ('MetaSel ('Just "uriScheme") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "uriAuthority") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe URIAuth))) :*: (S1 ('MetaSel ('Just "uriPath") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Just "uriQuery") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "uriFragment") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))) | |||||
parseURI :: String -> Maybe URI Source #
Turn a string containing a URI into a URI.
Returns Nothing if the string is not a valid URI;
(an absolute URI with optional fragment identifier).
NOTE: this is different from the previous network.URI,
whose parseURI function works like parseURIReference
in this module.
uriToString :: (String -> String) -> URI -> ShowS Source #
Turn a URI into a string.
Uses a supplied function to map the userinfo part of the URI.
The Show instance for URI uses a mapping that hides any password
that may be present in the URI. Use this function with argument id
to preserve the password in the formatted output.
Constructors
| URIParseError String String | |
| URIAppendError URI URI |
Instances
| HasURIError URIError Source # | |
Defined in Debian.URI Methods fromURIError :: URIError -> URIError Source # | |
| Show URIError Source # | |
| Eq URIError Source # | |
| Ord URIError Source # | |
Defined in Debian.URI | |
String known to parsable by parseURIReference. Mainly
A wrapper around a String containing a known parsable URI. Not absolutely safe, because you could say read "URI' "bogus string"" :: URI'. But enough to save me from myself.
toURI' :: URI -> URI' Source #
Using the bogus Show instance of URI here. If it ever gets fixed this will stop working. Worth noting that show will obscure any password info embedded in the URI, so that's nice.
parseURIReference' :: (HasURIError e, MonadError e m) => String -> m URI Source #
parseURI' :: (HasURIError e, MonadError e m) => String -> m URI Source #
parseURI with MonadError
parseAbsoluteURI' :: (HasURIError e, MonadError e m) => String -> m URI Source #
parseRelativeReference' :: (HasURIError e, MonadError e m) => String -> m URI Source #
parseURIUnsafe :: String -> URI Source #
appendURI :: MonadError URIError m => URI -> URI -> m URI Source #
Conservative appending of absolute and relative URIs. There may be other cases that can be implemented, lets see if they turn up.
appendURIs :: (Foldable t, MonadError URIError m) => t URI -> m URI Source #
Append a list of URI @@ λ> appendURIs (parseURI "http://host.com") (parseURIRelative "/bar")
uriToString' :: URI -> String Source #
Lift IO operations into a MonadError instance
class HasParseError e where Source #
Methods
fromParseError :: ParseError -> e Source #
Instances
| HasParseError ParseError Source # | |
Defined in Debian.URI Methods | |
class HasURIError e where Source #
Methods
fromURIError :: URIError -> e Source #
Instances
| HasURIError URIError Source # | |
Defined in Debian.URI Methods fromURIError :: URIError -> URIError Source # | |
QuickCheck properties
prop_print_parse :: URI -> Bool Source #
prop_append_singleton :: URI -> Bool Source #
Orphan instances
| Ord ParseError Source # | |
Methods compare :: ParseError -> ParseError -> Ordering Source # (<) :: ParseError -> ParseError -> Bool Source # (<=) :: ParseError -> ParseError -> Bool Source # (>) :: ParseError -> ParseError -> Bool Source # (>=) :: ParseError -> ParseError -> Bool Source # max :: ParseError -> ParseError -> ParseError Source # min :: ParseError -> ParseError -> ParseError Source # | |