#!/usr/bin/env python3 # # Copyright (C) 2019 Intel Corporation. All rights reserved. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception # import ctypes from wamr import * def hello_callback(): print("Calling back...") print("> Hello World!") def main(): print("Initializing...") engine = Engine() store = Store(engine) print("Loading binary...") print("Compiling module...") module = Module.from_file(engine, "./hello.wasm") print("Creating callback...") hello = Func(store, FuncType([], []), hello_callback) print("Instantiating module...") instance = Instance(store, module, [hello]) print("Extracting export...") run = instance.exports(store)["run"] print("Calling export...") run(store) print("Shutting down...") print("Done.") if __name__ == "__main__": main()