iri 0.5 → 0.5.1
raw patch · 3 files changed
+62/−8 lines, 3 files
Files
- iri.cabal +1/−1
- library/Iri/Rendering/Text/Internal.hs +44/−4
- library/Iri/Rendering/TextBuilder/Internal.hs +17/−3
iri.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.0 name: iri-version: 0.5+version: 0.5.1 category: URI, URL, IRI, Network synopsis: RFC-based resource identifier library description:
library/Iri/Rendering/Text/Internal.hs view
@@ -7,10 +7,50 @@ -- | Render as a Unicode IRI text iri :: Iri -> Text-iri =- B.run . A.iri+iri = B.run . A.iri -- | Render as a Unicode IRI text httpIri :: HttpIri -> Text-httpIri =- B.run . A.httpIri+httpIri = B.run . A.httpIri++scheme :: Scheme -> Text+scheme = B.run . A.scheme++hierarchy :: Hierarchy -> Text+hierarchy = B.run . A.hierarchy++authority :: Authority -> Text+authority = B.run . A.authority++userInfo :: UserInfo -> Text+userInfo = B.run . A.userInfo++host :: Host -> Text+host = B.run . A.host++regName :: RegName -> Text+regName = B.run . A.regName++domainLabel :: DomainLabel -> Text+domainLabel = B.run . A.domainLabel++ipV4 :: IPv4 -> Text+ipV4 = B.run . A.ipV4++ipV6 :: IPv6 -> Text+ipV6 = B.run . A.ipV6++port :: Port -> Text+port = B.run . A.port++path :: Path -> Text+path = B.run . A.path++pathSegment :: PathSegment -> Text+pathSegment = B.run . A.pathSegment++query :: Query -> Text+query = B.run . A.query++fragment :: Fragment -> Text+fragment = B.run . A.fragment
library/Iri/Rendering/TextBuilder/Internal.hs view
@@ -1,6 +1,20 @@ module Iri.Rendering.TextBuilder.Internal ( iri, httpIri,+ scheme,+ hierarchy,+ authority,+ userInfo,+ host,+ regName,+ domainLabel,+ ipV4,+ ipV6,+ port,+ path,+ pathSegment,+ query,+ fragment, ) where @@ -77,12 +91,12 @@ host :: Host -> Builder host = \case- NamedHost value -> domainName value+ NamedHost value -> regName value IpV4Host value -> ipV4 value IpV6Host value -> ipV6 value -domainName :: RegName -> Builder-domainName (RegName vector) =+regName :: RegName -> Builder+regName (RegName vector) = F.intercalate domainLabel (char '.') vector domainLabel :: DomainLabel -> Builder