X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2FGhciMonad.hs;h=863372ff4a385fb9232c7dab39bbd680db9a5049;hb=75d172aa49ec59699f52837eb4c6ea8abc27a03e;hp=82f2aa7c731225944254334ecf081dde29ac9837;hpb=94bf0d3604ff0d2ecab246924af712bdd1c29a40;p=ghc-hetmet.git diff --git a/ghc/GhciMonad.hs b/ghc/GhciMonad.hs index 82f2aa7..863372f 100644 --- a/ghc/GhciMonad.hs +++ b/ghc/GhciMonad.hs @@ -191,7 +191,7 @@ instance ExceptionMonad GHCi where unGHCi (f g_restore) s instance MonadIO GHCi where - liftIO = io + liftIO = MonadUtils.liftIO instance Haskeline.MonadException GHCi where catch = gcatch @@ -233,9 +233,6 @@ unsetOption opt = do st <- getGHCiState setGHCiState (st{ options = filter (/= opt) (options st) }) -io :: IO a -> GHCi a -io = MonadUtils.liftIO - printForUser :: GhcMonad m => SDoc -> m () printForUser doc = do unqual <- GHC.getPrintUnqual @@ -244,7 +241,7 @@ printForUser doc = do printForUserPartWay :: SDoc -> GHCi () printForUserPartWay doc = do unqual <- GHC.getPrintUnqual - io $ Outputable.printForUserPartWay stdout opt_PprUserLength unqual doc + liftIO $ Outputable.printForUserPartWay stdout opt_PprUserLength unqual doc runStmt :: String -> GHC.SingleStep -> GHCi GHC.RunResult runStmt expr step = do @@ -299,9 +296,9 @@ printTimes allocs psecs revertCAFs :: GHCi () revertCAFs = do - io $ rts_revertCAFs + liftIO rts_revertCAFs s <- getGHCiState - when (not (ghc_e s)) $ io turnOffBuffering + when (not (ghc_e s)) $ liftIO turnOffBuffering -- Have to turn off buffering again, because we just -- reverted stdout, stderr & stdin to their defaults. @@ -350,8 +347,8 @@ initInterpBuffering = do -- make sure these are linked flushInterpBuffers :: GHCi () flushInterpBuffers - = io $ do getHandle stdout_ptr >>= hFlush - getHandle stderr_ptr >>= hFlush + = liftIO $ do getHandle stdout_ptr >>= hFlush + getHandle stderr_ptr >>= hFlush turnOffBuffering :: IO () turnOffBuffering