]> glassweightruler.freedombox.rocks Git - xdg-ninja.git/blob - haskell/lib/PreviewProgram.hs
radian: .radian_history (#484)
[xdg-ninja.git] / haskell / lib / PreviewProgram.hs
1 module PreviewProgram where
2
3 import qualified Data.Text as T
4 import Data.Text.ANSI
5 import Output
6 import Program
7
8 previewFile :: T.Text -> File -> IO ()
9 previewFile name file = logFile name file True
10
11 previewProgram :: Program -> IO ()
12 previewProgram program = do
13 _ <- sequence (map (previewFile (name program)) (files program))
14 return ()
15
16 previewProgramFile :: String -> IO ()
17 previewProgramFile filename = do
18 x <- readProgram filename
19 case x of
20 Just program -> previewProgram program
21 Nothing -> putStrLn (T.unpack (red (T.pack "Error.")))
22 return ()