Render a URI to a String, for use in testing
This uses uriToString id as the docs specify.
It potentially exposes passwords, so only use it if you know what you're
doing.
:: a typeCtrl KGHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05
Modulevalidity-network-uri-0.0.0.1Haskell2010
Validity instances for URI and URIAuth
The main API of this module is in the orphan instances Validity URI and Validity URIAuth.
Render a URI to a String, for use in testing
This uses uriToString id as the docs specify.
It potentially exposes passwords, so only use it if you know what you're
doing.
Render a URI to a String, for use in testing
This uses uriToString id as the docs specify.
It potentially exposes passwords, so only use it if you know what you're
doing.
Validate the uriUserInfo part of an URI
NOTE: Watch out with using this validation separately, it may not reject enough.
userinfo = *( unreserved pct-encoded sub-delims / ":" )
Validate the uriRegName part of an URI
NOTE: Watch out with using this validation separately, it may not reject enough.
RFC 3986, section 3.2.2
host = IP-literal IPv4address reg-name
IP-literal = "[" ( IPv6address / IPvFuture ) "]"
IPvFuture = "v" 1*HEXDIG "." 1*( unreserved sub-delims ":" )
reg-name = *( unreserved pct-encoded sub-delims )
Validate the uriPort part of an URI
NOTE: Watch out with using this validation separately, it may not reject enough.
RFC 3986, section 3.2.3
port = *DIGIT
NOTE: The spec does not specify a maximum length of ports so we do not validate this either.
Validate the uriScheme part of an URI
NOTE: Watch out with using this validation separately, it may not reject enough.
RFC 3986, section 3.1
scheme = ALPHA *( ALPHA DIGIT "+" "-" "." )
Validate the uriPath part of an URI
NOTE: Watch out with using this validation separately, it may not reject enough.
Validate the uriQuery part of an URI
NOTE: Watch out with using this validation separately, it may not reject enough.