@@ -8,21 +8,21 @@ module Iri.Parsing.Attoparsec.ByteString
88where
99
1010import Data.Attoparsec.ByteString hiding (try )
11- import Data.Attoparsec.ByteString.Char8 qualified as F
12- import Data.ByteString qualified as K
13- import Data.Text.Encoding qualified as B
14- import Data.Text.Encoding.Error qualified as L
15- import Data.Text.Punycode qualified as A
16- import Data.Vector qualified as S
17- import Iri.CodePointPredicates.Rfc3986 qualified as C
11+ import qualified Data.Attoparsec.ByteString.Char8 as F
12+ import qualified Data.ByteString as K
13+ import qualified Data.Text.Encoding as B
14+ import qualified Data.Text.Encoding.Error as L
15+ import qualified Data.Text.Punycode as A
16+ import qualified Data.Vector as S
17+ import qualified Iri.CodePointPredicates.Rfc3986 as C
1818import Iri.Data
19- import Iri.MonadPlus qualified as R
20- import Iri.PercentEncoding qualified as I
19+ import qualified Iri.MonadPlus as R
20+ import qualified Iri.PercentEncoding as I
2121import Iri.Prelude hiding (foldl , hash )
22- import Net.IPv4 qualified as M
23- import Net.IPv6 qualified as N
24- import Text.Builder qualified as J
25- import VectorBuilder.MonadPlus qualified as E
22+ import qualified Net.IPv4 as M
23+ import qualified Net.IPv6 as N
24+ import qualified TextBuilder as J
25+ import qualified VectorBuilder.MonadPlus as E
2626
2727{-# INLINE percent #-}
2828percent :: Parser Word8
@@ -87,7 +87,7 @@ uri :: Parser Iri
8787uri =
8888 labeled " URI" $ do
8989 parsedScheme <- scheme
90- colon
90+ _ <- colon
9191 parsedHierarchy <- hierarchy
9292 parsedQuery <- query
9393 parsedFragment <- fragment
@@ -99,12 +99,12 @@ uri =
9999httpUri :: Parser HttpIri
100100httpUri =
101101 labeled " HTTP URI" $ do
102- satisfy (\ x -> x == 104 || x == 72 )
103- satisfy (\ x -> x == 116 || x == 84 )
104- satisfy (\ x -> x == 116 || x == 84 )
105- satisfy (\ x -> x == 112 || x == 80 )
102+ _ <- satisfy (\ x -> x == 104 || x == 72 )
103+ _ <- satisfy (\ x -> x == 116 || x == 84 )
104+ _ <- satisfy (\ x -> x == 116 || x == 84 )
105+ _ <- satisfy (\ x -> x == 112 || x == 80 )
106106 secure <- satisfy (\ b -> b == 115 || b == 83 ) $> True <|> pure False
107- string " ://"
107+ _ <- string " ://"
108108 parsedHost <- host
109109 parsedPort <- PresentPort <$> (colon *> port) <|> pure MissingPort
110110 parsedPath <- (forwardSlash *> path) <|> pure (Path mempty )
@@ -169,26 +169,26 @@ ipV6 :: Parser IPv6
169169ipV6 =
170170 do
171171 a <- F. hexadecimal
172- colon
172+ _ <- colon
173173 b <- F. hexadecimal
174- colon
174+ _ <- colon
175175 c <- F. hexadecimal
176- colon
176+ _ <- colon
177177 d <- F. hexadecimal
178- colon
178+ _ <- colon
179179 mplus
180180 ( do
181181 e <- F. hexadecimal
182- colon
182+ _ <- colon
183183 f <- F. hexadecimal
184- colon
184+ _ <- colon
185185 g <- F. hexadecimal
186- colon
186+ _ <- colon
187187 h <- F. hexadecimal
188188 return (N. fromWord16s a b c d e f g h)
189189 )
190190 ( do
191- colon
191+ _ <- colon
192192 return (N. fromWord16s a b c d 0 0 0 0 )
193193 )
194194
@@ -252,7 +252,7 @@ utf8Chunks chunk =
252252 fail " Unexpected decoding error"
253253 finish (builder, undecodedBytes, _) =
254254 if K. null undecodedBytes
255- then return (J. run builder)
255+ then return (J. toText builder)
256256 else fail (showString " UTF8 decoding: Bytes remaining: " (show undecodedBytes))
257257
258258{-# INLINEABLE urlEncodedString #-}
@@ -270,7 +270,7 @@ urlEncodedString unencodedBytesPredicate =
270270percentEncodedByte :: Parser Word8
271271percentEncodedByte =
272272 labeled " Percent-encoded byte" $ do
273- percent
273+ _ <- percent
274274 byte1 <- anyWord8
275275 byte2 <- anyWord8
276276 I. matchPercentEncodedBytes (fail " Broken percent encoding" ) return byte1 byte2
0 commit comments