diff --git a/src/module.rs b/src/module.rs index bbce6de..e5ad87d 100644 --- a/src/module.rs +++ b/src/module.rs @@ -39,6 +39,9 @@ use {Error, MemoryInstance, Module, RuntimeValue, Signature, TableInstance}; #[derive(Clone, Debug)] pub struct ModuleRef(pub(crate) Rc); +unsafe impl Sync for ModuleRef {} +unsafe impl Send for ModuleRef {} + impl ::core::ops::Deref for ModuleRef { type Target = ModuleInstance; fn deref(&self) -> &ModuleInstance { @@ -164,6 +167,9 @@ pub struct ModuleInstance { exports: RefCell>, } +unsafe impl Sync for ModuleInstance {} +unsafe impl Send for ModuleInstance {} + impl ModuleInstance { fn default() -> Self { ModuleInstance {