/* * nanowasm, a tiny WebAssembly/Wasm interpreter * Copyright (C) 2023-2024 Xavier Del Campo Romero * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ #ifndef ROUTINES_H #define ROUTINES_H #include void nwp_check_magic(struct nw_mod *m); void nwp_check_version(struct nw_mod *m); void nwp_section(struct nw_mod *m); void nwp_section_custom(struct nw_mod *m); void nwp_section_type(struct nw_mod *m); void nwp_section_import(struct nw_mod *m); void nwp_section_function(struct nw_mod *m); void nwp_section_table(struct nw_mod *m); void nwp_section_memory(struct nw_mod *m); void nwp_section_global(struct nw_mod *m); void nwp_section_export(struct nw_mod *m); void nwp_section_start(struct nw_mod *m); void nwp_section_element(struct nw_mod *m); void nwp_section_code(struct nw_mod *m); void nwp_section_data(struct nw_mod *m); enum nw_state nwp_section_skip(struct nw_mod *m); enum nw_state nwp_section_exit(struct nw_mod *m); void nwp_find_export(struct nw_interp *i, const char *sym, enum nw_state (*next)(struct nw_interp *)); void nwp_call(struct nw_interp *i, nw_varuint32 index); void nwp_find_function(struct nw_interp *i, nw_varuint32 index, enum nw_state (*next)(struct nw_interp *)); void nwp_get_function_type(struct nw_interp *i, nw_varuint32 index, enum nw_state (*next)(struct nw_interp *)); #endif