-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Prevent or capture writing to stdout and other handles.
--   
--   Prevent or capture writing to stdout and other handles.
@package silently
@version 1.2.5


-- | Need to prevent output to the terminal, a file, or stderr? Need to
--   capture it and use it for your own means? Now you can, with
--   <a>silence</a> and <a>capture</a>.
module System.IO.Silently

-- | Run an IO action while preventing all output to stdout.
silence :: IO a -> IO a

-- | Run an IO action while preventing all output to the given handles.
hSilence :: [Handle] -> IO a -> IO a

-- | Run an IO action while preventing and capturing all output to stdout.
--   This will, as a side effect, create and delete a temp file in the temp
--   directory or current directory if there is no temp directory.
capture :: IO a -> IO (String, a)

-- | Like <a>capture</a>, but discards the result of given action.
capture_ :: IO a -> IO String

-- | Run an IO action while preventing and capturing all output to the
--   given handles. This will, as a side effect, create and delete a temp
--   file in the temp directory or current directory if there is no temp
--   directory.
hCapture :: [Handle] -> IO a -> IO (String, a)

-- | Like <a>hCapture</a>, but discards the result of given action.
hCapture_ :: [Handle] -> IO a -> IO String
