make serializer work correct

This commit is contained in:
Ilya Rezvov
2018-02-19 14:30:06 -08:00
parent 809d5bbf38
commit 8dc40aa699
5 changed files with 54 additions and 4 deletions
+9
View File
@@ -12,6 +12,7 @@ import qualified Data.ByteString.Lazy as LBS
import qualified Language.Wasm.Lexer as Lexer
import qualified Language.Wasm.Parser as Parser
import qualified Language.Wasm.Structure as Structure
import qualified Language.Wasm.Binary as Binary
import qualified Debug.Trace as Debug
@@ -19,9 +20,17 @@ isRight :: (Show b) => Either a b -> Bool
isRight (Right x) = x `seq` True
isRight _ = False
compile :: String -> IO ()
compile file = do
content <- LBS.readFile $ "tests/samples/" ++ file
let Right mod = Parser.parseModule <$> Lexer.scanner content
LBS.writeFile ("tests/runnable/" ++ file) $ Binary.dumpModuleLazy mod
-- to run: python -m SimpleHTTPServer 8081 && open http://localhost:8081/tests/runnable
main :: IO ()
main = do
files <- Directory.listDirectory "tests/samples"
compile "fact.wast"
testCases <- (`mapM` files) $ \file -> do
content <- LBS.readFile $ "tests/samples/" ++ file
let result = Parser.parseModule <$> Lexer.scanner content