Skip to content

Commit 284740a

Browse files
author
pranaysashank
committed
Use ParserK instead of ParserD.
1 parent e38339a commit 284740a

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/Streamly/Internal/Data/Json/Stream.hs

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,13 @@ import Data.Scientific (Scientific)
2626
import qualified Data.HashMap.Strict as HM
2727
import qualified Data.Scientific as Sci
2828

29-
import Streamly.Internal.Data.Parser.ParserD (Parser)
29+
import Streamly.Internal.Data.Parser (Parser)
3030
import Streamly.Internal.Data.Array (Array)
3131
import Streamly.Internal.Data.Fold.Types (Fold(..))
3232
import Streamly.Internal.Data.Tuple.Strict (Tuple' (..))
3333
import qualified Streamly.Internal.Data.Parser as PR
3434
import qualified Streamly.Internal.Data.Parser.ParserK.Types as K
35-
import qualified Streamly.Internal.Data.Parser.ParserD as P
35+
import qualified Streamly.Internal.Data.Parser as P
3636
import qualified Streamly.Internal.Data.Array as A
3737
import qualified Streamly.Internal.Data.Fold as IFL
3838
import qualified Streamly.Internal.Data.Unfold as IUF
@@ -177,21 +177,23 @@ parseJsonNumber = do
177177
Sci.scientific signedCoeff . (e +) <$> parseDecimal
178178
_ -> return (Sci.scientific signedCoeff e)
179179

180+
{-# SCC parseJsonString #-}
180181
{-# INLINE parseJsonString #-}
181182
parseJsonString :: MonadCatch m => Parser m Word8 JsonString
182183
parseJsonString = do
183184
match DOUBLE_QUOTE
184-
s <- P.takeWhile (\w -> w /= DOUBLE_QUOTE && w /= BACKSLASH) (Uni.foldUtf8With A.unsafeWrite)
185+
s <- {-# SCC "takeWhileing" #-} (P.takeWhile (\w -> w /= DOUBLE_QUOTE && w /= BACKSLASH) $ {-# SCC "foldingUtf8" #-} (Uni.foldUtf8With A.unsafeWrite))
185186
w <- P.peek
186187
case w of
187188
DOUBLE_QUOTE -> skip 1 >> return s
188-
BACKSLASH -> (fmap (s <>) escapeParseJsonString) <* skip 1
189+
BACKSLASH -> {-# SCC "Appending" #-} ((fmap (s <>) escapeParseJsonString) <* skip 1)
189190
_ -> do
190191
P.die $ [(chr . fromIntegral) w] ++ " : String without end."
191192

193+
{-# SCC escapeParseJsonString #-}
192194
{-# INLINE escapeParseJsonString #-}
193195
escapeParseJsonString :: MonadCatch m => Parser m Word8 JsonString
194-
escapeParseJsonString = P.scan startState go (escapeFoldUtf8With A.unsafeWrite)
196+
escapeParseJsonString = P.scan startState go $ (escapeFoldUtf8With A.unsafeWrite)
195197
where
196198
startState = False
197199
go s a
@@ -252,16 +254,15 @@ parseJsonArray = do
252254

253255
{-# INLINE parseJsonEOF #-}
254256
parseJsonEOF :: MonadCatch m => PR.Parser m Word8 Value
255-
parseJsonEOF =
256-
K.toParserK $ do
257+
parseJsonEOF = do
257258
v <- parseJsonValue
258259
skipSpace
259260
P.eof
260261
return v
261262

262263
{-# INLINE parseJson #-}
263264
parseJson :: MonadCatch m => PR.Parser m Word8 Value
264-
parseJson = K.toParserK $ parseJsonValue
265+
parseJson = parseJsonValue
265266

266267
{-
267268

0 commit comments

Comments
 (0)