phasm/compile.py
Johan B.W. de Vries edd12e5b7c cleanup [skip-ci]
2021-04-04 16:32:56 +02:00

31 lines
583 B
Python

import _ast
import ast
import sys
from py2wasm.wasm import Module
from py2wasm.python import Visitor
def process(input: str, input_name: str) -> str:
res = ast.parse(input, input_name)
module = Module()
visitor = Visitor(module)
visitor.visit(res)
return module.generate()
def main(source: str, sink: str) -> int:
with open(source, 'r') as fil:
code_py = fil.read()
code_wat = process(code_py, source)
with open(sink, 'w') as fil:
fil.write(code_wat)
return 0
if __name__ == '__main__':
sys.exit(main(*sys.argv[1:]))