tlex-encoding 0.2.0.0 → 0.3.0.0
raw patch · 4 files changed
+18/−13 lines, 4 filesdep +enummapset-thdep ~tlexdep ~tlex-core
Dependencies added: enummapset-th
Dependency ranges changed: tlex, tlex-core
Files
- src/Language/Lexer/Tlex/Data/NonEmptyEnumStringSet.hs +8/−6
- src/Language/Lexer/Tlex/Plugin/Encoding/UTF8.hs +2/−2
- test/doctest/Doctest.hs +4/−2
- tlex-encoding.cabal +4/−3
src/Language/Lexer/Tlex/Data/NonEmptyEnumStringSet.hs view
@@ -11,9 +11,9 @@ import Prelude -import qualified Data.List.NonEmpty as NonEmpty-import qualified Language.Lexer.Tlex.Data.EnumMap as EnumMap-import qualified Language.Lexer.Tlex.Data.EnumSet as EnumSet+import qualified Data.EnumMap.Strict as EnumMap+import qualified Data.EnumSet as EnumSet+import qualified Data.List.NonEmpty as NonEmpty data NonEmptyEnumStringSet a = NonEmptyEnumStringSet@@ -45,9 +45,11 @@ insert (x NonEmpty.:| xs) s = case xs of [] -> insertSingleByte x s y:ys -> let xs' = y NonEmpty.:| ys in s- { enumStrings = EnumMap.insertOrUpdate x- do singleton xs'- do \xss -> insert xs' xss+ { enumStrings = EnumMap.alter+ do \case+ Nothing -> Just do singleton xs'+ Just xss -> Just do insert xs' xss+ do x do enumStrings s }
src/Language/Lexer/Tlex/Plugin/Encoding/UTF8.hs view
@@ -5,9 +5,9 @@ import Language.Lexer.Tlex.Prelude import qualified Data.CharSet as CharSet+import qualified Data.EnumMap.Strict as EnumMap+import qualified Data.EnumSet as EnumSet import qualified Data.IntSet as IntSet-import qualified Language.Lexer.Tlex.Data.EnumMap as EnumMap-import qualified Language.Lexer.Tlex.Data.EnumSet as EnumSet import qualified Language.Lexer.Tlex.Data.NonEmptyEnumStringSet as NonEmptyEnumStringSet import qualified Language.Lexer.Tlex.Plugin.Encoding.CharSetP as CharSetP import qualified Language.Lexer.Tlex.Syntax as Tlex
test/doctest/Doctest.hs view
@@ -3,10 +3,11 @@ import Prelude import qualified Build_doctests as BuildF+import qualified Control.Exception as Exception import Control.Monad import qualified System.Environment as IO import qualified System.IO as IO-import Test.DocTest (doctest)+import qualified Test.DocTest as DocTest main :: IO () main = forM_ BuildF.components \(BuildF.Component name flags pkgs sources) -> do@@ -16,6 +17,7 @@ IO.hFlush IO.stdout let args = flags ++ pkgs ++ sources IO.unsetEnv "GHC_ENVIRONMENT"- doctest args+ DocTest.doctest args `Exception.catch`+ \(e :: Exception.SomeException) -> print e putStrLn "=============================================" IO.hFlush IO.stdout
tlex-encoding.cabal view
@@ -2,7 +2,7 @@ build-type: Custom name: tlex-encoding-version: 0.2.0.0+version: 0.3.0.0 license: Apache-2.0 OR MPL-2.0 license-file: LICENSE copyright: (c) 2021 Mizunashi Mana@@ -92,10 +92,11 @@ base >= 4.12.0 && < 4.15, -- project depends- tlex-core >= 0.1.0 && < 0.3,- tlex >= 0.1.0 && < 0.3,+ tlex-core >= 0.3.0 && < 0.4,+ tlex >= 0.3.0 && < 0.4, charset >= 0.3.7 && < 0.4, containers >= 0.6.0 && < 0.7,+ enummapset-th >= 0.6.0 && < 0.7, autogen-modules: Paths_tlex_encoding