module ForSyDe.Deep.Backend.VHDL.FileIO (writeDesignFile) where
import ForSyDe.Deep.Backend.VHDL.AST
import ForSyDe.Deep.Backend.VHDL.Ppr()
import qualified ForSyDe.Deep.Backend.Ppr as ForSyDePpr (ppr)
import System.IO
import Text.PrettyPrint.HughesPJ
writeDesignFile :: DesignFile -> FilePath -> IO ()
writeDesignFile df fp = do
handle <- openFile fp WriteMode
hPutStrLn handle "-- Automatically generated by ForSyDe"
hPutStr handle $ (renderStyle mystyle . ForSyDePpr.ppr) df
hClose handle
where mystyle = style{lineLength=80, ribbonsPerLine=1}