{-# LANGUAGE CPP #-}
module BenchShow.Internal.Pretty
( Doc
, dullred
, dullgreen
, (<+>)
, vcat
, fill
, indent
, text
, putDoc
) where
#ifndef NO_COLORS
import Text.PrettyPrint.ANSI.Leijen hiding ((<$>))
#else
type Doc = String
dullred :: Doc -> Doc
dullred = id
dullgreen :: Doc -> Doc
dullgreen = id
(<+>) :: Doc -> Doc -> Doc
(<+>) x y = x ++ " " ++ y
vcat :: [Doc] -> Doc
vcat = unlines
putDoc :: Doc -> IO ()
putDoc = putStrLn
fill :: Int -> Doc -> Doc
fill i x =
let len = length x
in x ++ replicate (i - len) ' '
indent :: Int -> Doc -> Doc
indent i = unlines . map (replicate i ' ' ++) . lines
text :: String -> Doc
text = id
#endif