projects
/
matthijs
/
master-project
/
cλash.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use Data.Accessor for FuncData.
[matthijs/master-project/cλash.git]
/
Translator.hs
diff --git
a/Translator.hs
b/Translator.hs
index 2a752a79d34c94cc5ccc4b32cc296b7aaeade5d2..eb4e59f5da01448e8390445e6a511593c626941d 100644
(file)
--- a/
Translator.hs
+++ b/
Translator.hs
@@
-14,6
+14,7
@@
import qualified Control.Monad.State as State
import qualified Data.Foldable as Foldable
import Name
import qualified Data.Map as Map
import qualified Data.Foldable as Foldable
import Name
import qualified Data.Map as Map
+import Data.Accessor
import Data.Generics
import NameEnv ( lookupNameEnv )
import qualified HscTypes
import Data.Generics
import NameEnv ( lookupNameEnv )
import qualified HscTypes
@@
-91,10
+92,10
@@
moduleToVHDL core list = do
mapM addBuiltIn builtin_funcs
-- Create entities and architectures for them
Monad.zipWithM processBind statefuls binds
mapM addBuiltIn builtin_funcs
-- Create entities and architectures for them
Monad.zipWithM processBind statefuls binds
- modFuncMap $ Map.map (
\fdata -> fdata {flatFunc = fmap nameFlatFunction (flatFunc fdata)}
)
- modFuncMap $ Map.mapWithKey (\hsfunc fdata -> fd
ata {funcEntity = VHDL.createEntity hsfunc fdata}
)
+ modFuncMap $ Map.map (
fdFlatFunc ^: (fmap nameFlatFunction)
)
+ modFuncMap $ Map.mapWithKey (\hsfunc fdata -> fd
Entity ^= (VHDL.createEntity hsfunc fdata) $ fdata
)
funcs <- getFuncMap
funcs <- getFuncMap
- modFuncMap $ Map.mapWithKey (\hsfunc fdata -> fd
ata {funcArch = VHDL.createArchitecture funcs hsfunc fdata}
)
+ modFuncMap $ Map.mapWithKey (\hsfunc fdata -> fd
Arch ^= (VHDL.createArchitecture funcs hsfunc fdata) $ fdata
)
funcs <- getFuncs
return $ VHDL.getDesignFiles (map snd funcs)
funcs <- getFuncs
return $ VHDL.getDesignFiles (map snd funcs)