Copyright | (C) 2012-2016, University of Twente |
---|---|
License | BSD2 (see the file LICENSE) |
Maintainer | Christiaan Baaij <christiaan.baaij@gmail.com> |
Safe Haskell | None |
Language | Haskell2010 |
Module that connects all the parts of the CLaSH compiler library
- generateHDL :: forall backend. Backend backend => BindingMap -> Maybe backend -> PrimMap Text -> HashMap TyConName TyCon -> IntMap TyConName -> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) -> (HashMap TyConName TyCon -> Bool -> Term -> Term) -> (TmName, Maybe TopEntity) -> Maybe TmName -> Maybe TmName -> CLaSHOpts -> (UTCTime, UTCTime) -> IO ()
- parsePrimitive :: Primitive Text -> Primitive BlackBoxTemplate
- createHDL :: Backend backend => backend -> String -> [(SrcSpan, Component)] -> [(String, Doc)]
- prepareDir :: Bool -> String -> String -> IO ()
- writeHDL :: Backend backend => backend -> FilePath -> (String, Doc) -> IO ()
- copyDataFiles :: FilePath -> [(String, FilePath)] -> IO ()
Documentation
:: Backend backend | |
=> BindingMap | Set of functions |
-> Maybe backend | |
-> PrimMap Text | Primitive / BlackBox Definitions |
-> HashMap TyConName TyCon | TyCon cache |
-> IntMap TyConName | Tuple TyCon cache |
-> (HashMap TyConName TyCon -> Type -> Maybe (Either String HWType)) | |
-> (HashMap TyConName TyCon -> Bool -> Term -> Term) | Hardcoded evaluator (delta-reduction) |
-> (TmName, Maybe TopEntity) | topEntity bndr + (maybe) TopEntity annotation |
-> Maybe TmName | testInput bndr |
-> Maybe TmName | expectedOutput bndr |
-> CLaSHOpts | Debug information level for the normalization process |
-> (UTCTime, UTCTime) | |
-> IO () |
Create a set of target HDL files for a set of functions
:: Backend backend | |
=> backend | Backend |
-> String | |
-> [(SrcSpan, Component)] | List of components |
-> [(String, Doc)] |
Pretty print Components to HDL Documents
Prepares the directory for writing HDL files. This means creating the dir if it does not exist and removing all existing .hdl files from it.