Update to lastest symantic-document
[haskell/symantic.git] / symantic-lib / test / Testing / Compiling.hs
index 8fb541122ece4625f140e5801c1ce40b33e786b7..d83e7fbab190f3237c05908683f97fc28c80d148 100644 (file)
@@ -9,16 +9,30 @@ import Test.Tasty
 import Test.Tasty.HUnit
 import Debug.Trace (trace)
 
+import Control.Applicative (Applicative(..))
 import Control.Arrow (left)
+import Control.Monad (Monad(..))
+import Data.Either (Either(..), either)
+import Data.Eq (Eq(..))
+import Data.Function (($), (.), id)
+import Data.Functor ((<$>))
 import Data.Functor.Identity (Identity(..))
+import Data.List ((++))
+import Data.Maybe (Maybe(..))
+import Data.Ord (Ord(..))
+import Data.String (String)
 import Data.Text (Text)
+import Data.Tuple (snd)
 import Data.Type.Equality
 import Data.Void (Void)
+import Prelude (error)
+import Text.Show (Show)
 import qualified Control.Monad.Classes.Run as MC
 import qualified Control.Monad.Trans.State.Strict as S
 import qualified Data.List as List
 import qualified Data.Text as Text
 import qualified Text.Megaparsec as P
+import qualified Text.Show as Show
 
 import Language.Symantic.Grammar
 import Language.Symantic
@@ -38,9 +52,9 @@ parseTe ::
  ModulesTyInj ss =>
  ModulesInj src ss =>
  Gram_Term src ss (G src ss) =>
- Text -> Either (P.ParseError Char Void) (AST_Term src ss)
+ Text -> Either (P.ParseErrorBundle Text Void) (AST_Term src ss)
 parseTe inp =
-       let modsTe :: Modules src ss = either (error . show) id modulesInj in
+       let modsTe :: Modules src ss = either (error . Show.show) id modulesInj in
        let impsTe = [] `importModules` modsTe in
        let modsTy = modulesTyInj @ss @src in
        let impsTy = importTypes @ss [] in
@@ -70,7 +84,7 @@ readTe ::
  ) =>
  Text ->
  Either ( Type src '[] t
-        , Either (P.ParseError Char Void)
+        , Either (P.ParseErrorBundle Text Void)
                  (Error_Term src) )
         (Type src '[] t, t, Text) ->
  TestTree
@@ -106,8 +120,8 @@ maybeRight (Right r) = Just r
 maybeRight Left{}    = Nothing
 
 elide :: Text -> String
-elide s | Text.length s > 42 = List.take 42 (Text.unpack s) List.++ ['…']
+elide s | Text.length s > 42 = List.take 42 (Text.unpack s) ++ ['…']
 elide s = Text.unpack s
 
 dbg :: Show a => String -> a -> a
-dbg msg x = trace (msg ++ " = " ++ Prelude.show x) x
+dbg msg x = trace (msg ++ " = " ++ Show.show x) x