chore(c-api) Simplify code.

This commit is contained in:
Ivan Enderlin
2021-01-28 14:11:08 +01:00
parent e379fd79fb
commit 37aee2d7ad
4 changed files with 12 additions and 15 deletions

View File

@@ -42,12 +42,9 @@ impl From<ExportType> for wasm_exporttype_t {
impl From<&ExportType> for wasm_exporttype_t { impl From<&ExportType> for wasm_exporttype_t {
fn from(other: &ExportType) -> Self { fn from(other: &ExportType) -> Self {
let name = other.name().to_string().into(); let name = Box::new(other.name().to_string().into());
let extern_type = Box::new(other.ty().into()); let extern_type = Box::new(other.ty().into());
wasm_exporttype_t { wasm_exporttype_t { name, extern_type }
name: Box::new(name),
extern_type,
}
} }
} }

View File

@@ -50,13 +50,13 @@ impl From<ImportType> for wasm_importtype_t {
impl From<&ImportType> for wasm_importtype_t { impl From<&ImportType> for wasm_importtype_t {
fn from(other: &ImportType) -> Self { fn from(other: &ImportType) -> Self {
let module = other.module().to_string().into(); let module = Box::new(other.module().to_string().into());
let name = other.name().to_string().into(); let name = Box::new(other.name().to_string().into());
let extern_type = Box::new(other.ty().into()); let extern_type = Box::new(other.ty().into());
wasm_importtype_t { wasm_importtype_t {
module: Box::new(module), module,
name: Box::new(name), name,
extern_type, extern_type,
} }
} }

View File

@@ -33,11 +33,11 @@ impl From<String> for wasm_name_t {
let mut boxed_str: Box<str> = string.into_boxed_str(); let mut boxed_str: Box<str> = string.into_boxed_str();
let data = boxed_str.as_mut_ptr(); let data = boxed_str.as_mut_ptr();
let size = boxed_str.bytes().len(); let size = boxed_str.bytes().len();
let wasm_byte = Self { data, size }; let wasm_name = Self { data, size };
Box::leak(boxed_str); Box::leak(boxed_str);
wasm_byte wasm_name
} }
} }

View File

@@ -411,13 +411,13 @@ unsafe fn wasi_get_unordered_imports_inner(
*imports = import_object *imports = import_object
.into_iter() .into_iter()
.map(|((module, name), export)| { .map(|((module, name), export)| {
let module = module.into(); let module = Box::new(module.into());
let name = name.into(); let name = Box::new(name.into());
let extern_inner = Extern::from_vm_export(store, export); let extern_inner = Extern::from_vm_export(store, export);
Box::new(wasm_named_extern_t { Box::new(wasm_named_extern_t {
module: Box::new(module), module,
name: Box::new(name), name,
r#extern: Box::new(wasm_extern_t { r#extern: Box::new(wasm_extern_t {
instance: None, instance: None,
inner: extern_inner, inner: extern_inner,