module Test.DocTest.Gen where
import Prelude
ddgen :: [String] -> IO ()
ddgen :: [String] -> IO ()
ddgen (String
src : String
inp : String
out : [String]
opts) = String -> String -> String -> [String] -> IO ()
ddgen_run String
src String
inp String
out [String]
opts
ddgen [String]
_ = IO ()
ddgen_usage
ddgen_run
:: String
-> String
-> String
-> [String]
-> IO ()
ddgen_run :: String -> String -> String -> [String] -> IO ()
ddgen_run String
_ String
_ String
out [String]
opts = String -> [String] -> IO ()
ddgen_output String
out [String]
opts
ddgen_output :: String -> [String] -> IO ()
ddgen_output :: String -> [String] -> IO ()
ddgen_output String
out [String]
opts = String -> String -> IO ()
writeFile String
out (String -> IO ()) -> String -> IO ()
forall a b. (a -> b) -> a -> b
$ [String] -> String
unlines [
String
"import Prelude",
String
"import Test.DocTest",
String
"",
String
"main :: IO ()",
String
"main = doctest " String -> String -> String
forall a. [a] -> [a] -> [a]
++ [String] -> String
forall a. Show a => a -> String
show [String]
opts]
ddgen_usage :: IO ()
ddgen_usage :: IO ()
ddgen_usage = String -> IO ()
putStrLn (String -> IO ()) -> String -> IO ()
forall a b. (a -> b) -> a -> b
$ [String] -> String
unlines [
String
"Usage:",
String
" {-# OPTIONS_GHC -F -pgmF doctest-driver-gen [-optF DOCTEST_OPTION]... #-}",
String
"",
String
"Make your driver file with the content."]