Almost finished support for 'map'
[matthijs/master-project/cλash.git] / VHDLTypes.hs
index 6f6625b9727b5f497d14aba7d99c6eefef91b5af..2538158d10a1c31117f28c30812ee4d9017571e5 100644 (file)
@@ -54,8 +54,10 @@ type TypeFunMap = Map.Map OrdType [AST.SubProgBody]
 -- A map of a Haskell function to a hardware signature
 type SignatureMap = Map.Map CoreSyn.CoreBndr Entity
 
+type Builder = Either ([AST.Expr] -> AST.Expr) (Int -> Entity -> [AST.VHDLId] -> AST.GenerateSm)
+
 -- A map of a builtin function to VHDL function builder 
-type NameTable = Map.Map String (Int, [AST.Expr] -> AST.Expr )
+type NameTable = Map.Map String (Int, Builder )
 
 data VHDLSession = VHDLSession {
   -- | A map of Core type -> VHDL Type