summaryrefslogtreecommitdiff
path: root/compiler/utils/Outputable.lhs
diff options
context:
space:
mode:
authorIan Lynagh <igloo@earth.li>2011-05-25 19:07:51 +0100
committerIan Lynagh <igloo@earth.li>2011-05-25 20:47:26 +0100
commita5f5a70c41b4bce2715bf5d478171fbaf060cddf (patch)
treee9be157af01bcb2c9a4ac51e01d3b9c71c0d4307 /compiler/utils/Outputable.lhs
parentea3a9edda14f952042fa262abd37cc4fa0c1dd6d (diff)
downloadhaskell-sdoc.tar.gz
More DynFlags + SDocsdoc
Diffstat (limited to 'compiler/utils/Outputable.lhs')
-rw-r--r--compiler/utils/Outputable.lhs10
1 files changed, 8 insertions, 2 deletions
diff --git a/compiler/utils/Outputable.lhs b/compiler/utils/Outputable.lhs
index 3fd0915a22..12540dbc39 100644
--- a/compiler/utils/Outputable.lhs
+++ b/compiler/utils/Outputable.lhs
@@ -16,6 +16,7 @@ module Outputable (
-- * Pretty printing combinators
SDoc, runSDoc, initSDocContext,
+ sdocWithDynFlags,
docToSDoc,
interppSP, interpp'SP, pprQuotedList, pprWithCommas, quotedListWithOr,
empty, nest,
@@ -246,6 +247,11 @@ initSDocContext' dflags sty = SDC
, sdocDynFlags = dflags
}
+sdocWithDynFlags :: (DynFlags -> SDoc) -> SDoc
+sdocWithDynFlags f = SDoc (\sdc -> case f (sdocDynFlags sdc) of
+ SDoc mkDoc ->
+ mkDoc sdc)
+
withPprStyle :: PprStyle -> SDoc -> SDoc
withPprStyle sty d = SDoc $ \ctxt -> runSDoc d ctxt{sdocStyle=sty}
@@ -873,9 +879,9 @@ plural _ = char 's'
\begin{code}
-pprPanic :: String -> SDoc -> a
+pprPanic :: DynFlags -> String -> SDoc -> a
-- ^ Throw an exception saying "bug in GHC"
-pprPanic = pprAndThen panic
+pprPanic _ = pprAndThen panic
pprSorry :: String -> SDoc -> a
-- ^ Throw an exceptio saying "this isn't finished yet"