X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=GlobalNameTable.hs;h=9a6122778e91aee8a11a5d6180769c71f1208366;hb=1643800a4ef64501806747d2cafe917be7b1b3b2;hp=ef4b25ed986d542c79465bc46793f3c0de9a21e8;hpb=241a1d6f8a4bc9cccc0cacb05e8348fa3e204f74;p=matthijs%2Fmaster-project%2Fc%CE%BBash.git diff --git a/GlobalNameTable.hs b/GlobalNameTable.hs index ef4b25e..9a61227 100644 --- a/GlobalNameTable.hs +++ b/GlobalNameTable.hs @@ -12,11 +12,28 @@ import VHDLTypes import Constants import Generate -mkGlobalNameTable :: [(String, (Int, [AST.Expr] -> AST.Expr ) )] -> NameTable +mkGlobalNameTable :: [(String, (Int, Builder) )] -> NameTable mkGlobalNameTable = Map.fromList globalNameTable :: NameTable globalNameTable = mkGlobalNameTable - [ (show ('(V.!)) , (2, genExprFCall2L exId ) ) - , ("head" , (1, genExprFCall1L headId ) ) - ] \ No newline at end of file + [ (exId , (2, Left $ genExprFCall exId ) ) + , (replaceId , (3, Left $ genExprFCall replaceId ) ) + , (headId , (1, Left $ genExprFCall headId ) ) + , (lastId , (1, Left $ genExprFCall lastId ) ) + , (tailId , (1, Left $ genExprFCall tailId ) ) + , (initId , (1, Left $ genExprFCall initId ) ) + , (takeId , (2, Left $ genExprFCall takeId ) ) + , (dropId , (2, Left $ genExprFCall dropId ) ) + , (plusgtId , (2, Left $ genExprFCall plusgtId ) ) + , (mapId , (2, Right $ genMapCall ) ) + , (zipWithId , (3, Right $ genZipWithCall ) ) + , (foldlId , (3, Right $ genFoldlCall ) ) + , (emptyId , (0, Left $ genExprFCall emptyId ) ) + , (singletonId , (1, Left $ genExprFCall singletonId ) ) + , (copyId , (2, Left $ genExprFCall copyId ) ) + , (hwxorId , (2, Left $ genExprOp2 AST.Xor ) ) + , (hwandId , (2, Left $ genExprOp2 AST.And ) ) + , (hworId , (2, Left $ genExprOp2 AST.Or ) ) + , (hwnotId , (1, Left $ genExprOp1 AST.Not ) ) + ]