ghc-mod/core/GhcMod/Doc.hs

36 lines
898 B
Haskell
Raw Normal View History

2017-08-19 21:27:08 +00:00
{-# LANGUAGE CPP #-}
module GhcMod.Doc where
2013-03-12 13:15:23 +00:00
import GHC
import GhcMod.Gap (withStyle, showDocWith)
import Outputable
2017-08-19 21:27:08 +00:00
#if __GLASGOW_HASKELL__ >= 802
import DynFlags
#endif
import Pretty (Mode(..))
2013-03-12 13:15:23 +00:00
showPage :: DynFlags -> PprStyle -> SDoc -> String
showPage dflag style = showDocWith dflag PageMode . withStyle dflag style
2013-07-14 08:07:30 +00:00
showOneLine :: DynFlags -> PprStyle -> SDoc -> String
showOneLine dflag style = showDocWith dflag OneLineMode . withStyle dflag style
2013-07-14 08:07:30 +00:00
getStyle :: GhcMonad m => m PprStyle
getStyle = do
unqual <- getPrintUnqual
2017-08-19 21:27:08 +00:00
#if __GLASGOW_HASKELL__ >= 802
dflags <- getDynFlags
return $ mkUserStyle dflags unqual AllTheWay
#else
return $ mkUserStyle unqual AllTheWay
2017-08-19 21:27:08 +00:00
#endif
2013-03-12 13:15:23 +00:00
2017-08-19 21:27:08 +00:00
styleUnqualified :: DynFlags -> PprStyle
styleUnqualified dflags =
#if __GLASGOW_HASKELL__ >= 802
mkUserStyle dflags neverQualify AllTheWay
#else
mkUserStyle neverQualify AllTheWay
#endif