Add shortcut translation API

This commit is contained in:
Rerumu
2022-05-21 21:57:21 -04:00
parent f02070a1b3
commit ca57cf915a
10 changed files with 46 additions and 34 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
pub static RUNTIME: &str = include_str!("../runtime/runtime.lua");
pub use translator::{from_inst_list, from_module};
pub use translator::{from_inst_list, from_module_typed, from_module_untyped};
mod analyzer;
mod backend;
+9 -1
View File
@@ -329,7 +329,7 @@ pub fn from_inst_list(code: &[Instruction], type_info: &TypeInfo, w: &mut dyn Wr
/// # Errors
/// Returns `Err` if writing to `Write` failed.
pub fn from_module(wasm: &Module, type_info: &TypeInfo, w: &mut dyn Write) -> Result<()> {
pub fn from_module_typed(wasm: &Module, type_info: &TypeInfo, w: &mut dyn Write) -> Result<()> {
let func_list = build_func_list(wasm, type_info);
write_localize_used(&func_list, w)?;
@@ -345,3 +345,11 @@ pub fn from_module(wasm: &Module, type_info: &TypeInfo, w: &mut dyn Write) -> Re
write_func_list(wasm, type_info, &func_list, w)?;
write_module_start(wasm, type_info, &mem_list, w)
}
/// # Errors
/// Returns `Err` if writing to `Write` failed.
pub fn from_module_untyped(wasm: &Module, w: &mut dyn Write) -> Result<()> {
let type_info = TypeInfo::from_module(wasm);
from_module_typed(wasm, &type_info, w)
}