packages feed

iri 0.3.3 → 0.3.4

raw patch · 3 files changed

+20/−9 lines, 3 files

Files

iri.cabal view
@@ -1,7 +1,7 @@ name:   iri version:-  0.3.3+  0.3.4 category:   URI, URL, IRI, Network synopsis:
library/Iri/Parsing/Attoparsec/ByteString.hs view
@@ -2,6 +2,7 @@ (   uri,   httpUri,+  regName, ) where @@ -167,7 +168,7 @@   labeled "Host" $   IpV6Host <$> ipV6 <|>   IpV4Host <$> M.parserUtf8 <|>-  NamedHost <$> domainName+  NamedHost <$> regName  {-# INLINABLE ipV6 #-} ipV6 :: Parser IPv6@@ -195,9 +196,9 @@         colon         return (N.fromWord16s a b c d 0 0 0 0)) -{-# INLINE domainName #-}-domainName :: Parser RegName-domainName =+{-# INLINE regName #-}+regName :: Parser RegName+regName =   fmap RegName (E.sepBy1 domainLabel (word8 46))  {-|
library/Iri/Parsing/ByteString.hs view
@@ -2,6 +2,7 @@ (   uri,   httpUri,+  regName, ) where @@ -11,19 +12,28 @@ import qualified Data.Attoparsec.ByteString as B  +parser parser =+  either (Left . fromString) Right .+  B.parseOnly (parser <* B.endOfInput)+ {-| Parser of a well-formed URI conforming to the RFC3986 standard into IRI. Performs URL- and Punycode-decoding. -} uri :: ByteString -> Either Text Iri uri =-  either (Left . fromString) Right .-  B.parseOnly (A.uri <* B.endOfInput)+  parser A.uri  {-| Same as 'uri', but optimized specifially for the case of HTTP URIs. -} httpUri :: ByteString -> Either Text HttpIri httpUri =-  either (Left . fromString) Right .-  B.parseOnly (A.httpUri <* B.endOfInput)+  parser A.httpUri++{-|+Domain name parser.+-}+regName :: ByteString -> Either Text RegName+regName =+  parser A.regName