Fix build with attoparsec-0.14
It changed parseOnly in the ByteString.Lazy module to take a lazy, not strict ByteString. In all these cases though, we actually had a strict ByteString, so the most efficient fix, which also happens to avoid needing ifdefs, is to use the non-lazy module instead. This commit was sponsored by Denis Dzyubenko on Patreon.
This commit is contained in:
parent
41d9148c72
commit
4631d1ab56
7 changed files with 13 additions and 10 deletions
|
@ -24,7 +24,8 @@ import Utility.QuickCheck
|
|||
|
||||
import qualified Data.ByteString.Lazy as L
|
||||
import qualified Data.Map.Strict as M
|
||||
import qualified Data.Attoparsec.ByteString.Lazy as A
|
||||
import qualified Data.Attoparsec.ByteString as A
|
||||
import qualified Data.Attoparsec.ByteString.Lazy as AL
|
||||
import qualified Data.Attoparsec.ByteString.Char8 as A8
|
||||
import Data.ByteString.Builder
|
||||
|
||||
|
@ -49,8 +50,8 @@ buildMapLog fieldbuilder valuebuilder = mconcat . map genline . M.toList
|
|||
nl = charUtf8 '\n'
|
||||
|
||||
parseMapLog :: Ord f => A.Parser f -> A.Parser v -> L.ByteString -> MapLog f v
|
||||
parseMapLog fieldparser valueparser = fromMaybe M.empty . A.maybeResult
|
||||
. A.parse (mapLogParser fieldparser valueparser)
|
||||
parseMapLog fieldparser valueparser = fromMaybe M.empty . AL.maybeResult
|
||||
. AL.parse (mapLogParser fieldparser valueparser)
|
||||
|
||||
mapLogParser :: Ord f => A.Parser f -> A.Parser v -> A.Parser (MapLog f v)
|
||||
mapLogParser fieldparser valueparser = M.fromListWith best <$> parseLogLines go
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue