X-Git-Url: https://git.lukelau.me/?a=blobdiff_plain;f=src%2FLanguage%2FHaskell%2FLSP%2FTest%2FCompat.hs;h=cd7de0885e31db77eabd2f5b5b289255bf44385e;hb=a65254a5b7a5312bc616d601737f8595b14279ef;hp=00f2c0b08b848e94b671b7c0028f98f411ae8c95;hpb=ac2553b38ed2228839cb72747f8c48b7c2fab488;p=lsp-test.git diff --git a/src/Language/Haskell/LSP/Test/Compat.hs b/src/Language/Haskell/LSP/Test/Compat.hs index 00f2c0b..cd7de08 100644 --- a/src/Language/Haskell/LSP/Test/Compat.hs +++ b/src/Language/Haskell/LSP/Test/Compat.hs @@ -1,7 +1,9 @@ {-# LANGUAGE CPP #-} - module Language.Haskell.LSP.Test.Compat where +import Control.Concurrent.Chan +import Control.Monad.IO.Class +import Data.Conduit #ifdef mingw32_HOST_OS @@ -16,3 +18,13 @@ getProcessID :: IO Int getProcessID = fromIntegral <$> P.getProcessID #endif + +#if MIN_VERSION_conduit(1,3,0) +chanSource :: MonadIO m => Chan o -> ConduitT i o m b +#else +chanSource :: MonadIO m => Chan o -> ConduitM i o m b +#endif +chanSource c = do + x <- liftIO $ readChan c + yield x + chanSource c