packages feed

ddci-core-0.2.0.1: DDCI/Core/IO.hs

module DDCI.Core.IO
        ( outDoc, outDocLn
        , outStr, outStrLn)
where
import DDCI.Core.State
import DDC.Base.Pretty
import qualified Data.Set       as Set


outDoc :: State -> Doc -> IO ()
outDoc state doc
        | Set.member Indent $ stateModes state
        = putDocLn RenderIndent doc

        | otherwise
        = putDocLn RenderPlain doc


outDocLn :: State -> Doc -> IO ()
outDocLn state doc
        | Set.member Indent $ stateModes state
        = putDocLn RenderIndent doc

        | otherwise
        = putDocLn RenderPlain doc


outStr :: State -> String -> IO ()
outStr _state str
        = putStr str


outStrLn :: State -> String -> IO ()
outStrLn _state str
        = putStrLn str