URI.Extra.MultiHostPortPair
- Package
- purescript-uri
- Repository
- purescript-contrib/purescript-uri
#MultiHostPortPair Source
type MultiHostPortPair host port = Array (These host port)Multi-host/port pairs, where host & port combinations can be separated by
,, as used by some connection URI schemes. This is not strictly
compatible with RFC 3986, as in that spec RegNames can contain ,, and
only one port can be specified in the authority.
A motivating example for where this may be useful: dealing with mongodb connection strings.
#parser Source
parser :: forall host port. (Host -> Either URIPartParseError host) -> (Port -> Either URIPartParseError port) -> Parser String (MultiHostPortPair host port)A parser for multiple host/port pairs embedded in a URI.
This function allows for the Host and Port components to be parsed into
custom representations. If this is not necessary, use pure for both of
these arguments.
#print Source
print :: forall host port. (host -> Host) -> (port -> Port) -> MultiHostPortPair host port -> StringA printer for multiple host/port pairs embedded in a URI.
As a counterpart to the parser this function also requires the Host
and Port components to be printed back from their custom representations.
If no custom types are being used, pass identity for both of these arguments.
- Modules
- URI
- URI.
AbsoluteURI - URI.
Authority - URI.
Common - URI.
Extra. MultiHostPortPair - URI.
Extra. QueryPairs - URI.
Extra. UserPassInfo - URI.
Fragment - URI.
HierarchicalPart - URI.
Host - URI.
Host. Gen - URI.
Host. IPv4Address - URI.
Host. IPv6Address - URI.
Host. RegName - URI.
HostPortPair - URI.
HostPortPair. Gen - URI.
Path - URI.
Path. Absolute - URI.
Path. NoScheme - URI.
Path. Rootless - URI.
Path. Segment - URI.
Port - URI.
Port. Gen - URI.
Query - URI.
RelativePart - URI.
RelativeRef - URI.
Scheme - URI.
Scheme. Common - URI.
URI - URI.
URIRef - URI.
UserInfo