ghci-haskeline 0.1 → 0.1.1
raw patch · 3 files changed
+29/−6 lines, 3 filesdep ~ghc
Dependency ranges changed: ghc
Files
- GhciHaskeline/GhciMonad.hs +6/−1
- GhciHaskeline/InteractiveUI.hs +11/−2
- ghci-haskeline.cabal +12/−3
GhciHaskeline/GhciMonad.hs view
@@ -309,10 +309,15 @@ return GHC.RunFailed) $ do GHC.runStmt expr step +#if NEWER_GHC+resume :: (GHC.SrcSpan -> Bool) -> GHC.SingleStep -> GHCi GHC.RunResult+resume pred step = withVirtualPath$ do+ GHC.resume pred step+#else resume :: GHC.SingleStep -> GHCi GHC.RunResult resume step = withVirtualPath$ do GHC.resume step-+#endif -- -------------------------------------------------------------------------- -- timing & statistics
GhciHaskeline/InteractiveUI.hs view
@@ -653,7 +653,11 @@ st <- getGHCiState enqueueCommands [stop st] return ()+#if NEWER_GHC+ | otherwise -> resume step_here GHC.SingleStep >>=+#else | otherwise -> resume GHC.SingleStep >>=+#endif afterRunStmt step_here >> return () _ -> return () @@ -1582,7 +1586,6 @@ completion <- lookupCompletion cmd completion line "import" -> completeModule line- -- TODO: complete filename if inside quotations _ -> completeExpression line where (firstWord,rest) = break isSpace $ dropWhile isSpace $ reverse left@@ -1610,7 +1613,9 @@ completeModule = wrapIdentCompleter $ \w -> do dflags <- GHC.getSessionDynFlags let pkg_mods = allExposedModules dflags- return (filter (w `isPrefixOf`) (map (showSDoc.ppr) pkg_mods))+ loaded_mods <- liftM (map GHC.ms_mod_name) getLoadedModules+ return $ filter (w `isPrefixOf`)+ $ map (showSDoc.ppr) $ loaded_mods ++ pkg_mods completeHomeModule = wrapIdentCompleter listHomeModules @@ -1807,7 +1812,11 @@ -- doContinue :: SingleStep -> GHCi () doContinue :: (SrcSpan -> Bool) -> SingleStep -> GHCi () doContinue pred step = do +#if NEWER_GHC+ runResult <- resume pred step+#else runResult <- resume step+#endif afterRunStmt pred runResult return ()
ghci-haskeline.cabal view
@@ -1,5 +1,5 @@ Name: ghci-haskeline-Version: 0.1+Version: 0.1.1 Copyright: BSD3 License: BSD3 License-File: LICENSE@@ -16,14 +16,16 @@ the maintainer rather than of the GHC team. Homepage: http://code.haskell.org/~judah/ghci-haskeline +flag newer-ghc+ Description: for GHC >= 6.10.2+ Executable ghci-haskeline Main-Is: Main.hs Other-modules: GhciHaskeline.GhciMonad GhciHaskeline.InteractiveUI GhciHaskeline.GhciTags - Build-Depends: ghc == 6.10.*,- base >=4 && < 5,+ Build-Depends: base >=4 && < 5, array >= 0.1 && < 0.3, bytestring >= 0.9 && < 0.10, directory >= 1 && < 1.1,@@ -35,6 +37,13 @@ Build-Depends: Win32 else Build-Depends: unix++ if flag(newer-ghc)+ Build-Depends: ghc>=6.10.2 && < 6.11+ cpp-options: -DNEWER_GHC+ else+ Build-Depends: ghc>=6.9 && < 6.10.2+ Build-Depends: ghc-paths cpp-Options: -DGHCI ghc-options: -threaded