X-Git-Url: http://git.lukelau.me/?a=blobdiff_plain;f=src%2FLanguage%2FHaskell%2FLSP%2FTest%2FParsing.hs;h=b6830357db5b32144f9629d900d5f42b91f64196;hb=f0d93bbe47d55ab650909e0487c65c1048f1bb9a;hp=1b76e867b580ec8d15e3df74ea69234306adc955;hpb=a4c1143848809be8aed55403dc3187a256dcbe9b;p=opengl.git diff --git a/src/Language/Haskell/LSP/Test/Parsing.hs b/src/Language/Haskell/LSP/Test/Parsing.hs index 1b76e86..b683035 100644 --- a/src/Language/Haskell/LSP/Test/Parsing.hs +++ b/src/Language/Haskell/LSP/Test/Parsing.hs @@ -19,7 +19,6 @@ import Language.Haskell.LSP.Messages import Language.Haskell.LSP.Types as LSP hiding (error) import Language.Haskell.LSP.Test.Messages import Language.Haskell.LSP.Test.Session -import System.Console.ANSI satisfy :: (FromServerMessage -> Bool) -> Session FromServerMessage satisfy pred = do @@ -42,10 +41,7 @@ satisfy pred = do if pred x then do - liftIO $ do - setSGR [SetColor Foreground Vivid Magenta] - putStrLn $ "<-- " ++ B.unpack (encodeMsg x) - setSGR [Reset] + logMsg LogServer x return x else empty @@ -53,9 +49,8 @@ satisfy pred = do message :: forall a. (Typeable a, FromJSON a) => Session a message = let parser = decode . encodeMsg :: FromServerMessage -> Maybe a - in named (T.pack $ show $ head $ snd $ splitTyConApp $ last $ typeRepArgs $ typeOf parser) $ do - x <- satisfy (isJust . parser) - return $ castMsg x + in named (T.pack $ show $ head $ snd $ splitTyConApp $ last $ typeRepArgs $ typeOf parser) $ + castMsg <$> satisfy (isJust . parser) -- | Matches if the message is a notification. anyNotification :: Session FromServerMessage