mirror of
https://github.com/fluencelabs/parity-wasm
synced 2025-06-23 03:31:56 +00:00
Fix native_env_global.
This commit is contained in:
@ -1,16 +1,17 @@
|
||||
|
||||
use std::sync::Arc;
|
||||
use std::sync::{Arc, Weak};
|
||||
use std::collections::HashMap;
|
||||
use std::borrow::Cow;
|
||||
use parking_lot::RwLock;
|
||||
use elements::{Internal, ValueType};
|
||||
use interpreter::Error;
|
||||
use interpreter::module::{ModuleInstanceInterface, ExecutionParams, ItemIndex,
|
||||
use interpreter::module::{ModuleInstance, ModuleInstanceInterface, ExecutionParams, ItemIndex,
|
||||
CallerContext, ExportEntryType, InternalFunctionReference, InternalFunction, FunctionSignature};
|
||||
use interpreter::memory::MemoryInstance;
|
||||
use interpreter::table::TableInstance;
|
||||
use interpreter::value::RuntimeValue;
|
||||
use interpreter::variable::{VariableInstance, VariableType};
|
||||
use builder::module;
|
||||
|
||||
/// Min index of native function.
|
||||
pub const NATIVE_INDEX_FUNC_MIN: u32 = 10001;
|
||||
@ -284,6 +285,12 @@ pub fn native_module<'a, E: UserFunctionExecutor + 'a>(base: Arc<ModuleInstanceI
|
||||
Ok(Arc::new(NativeModuleInstance::new(base, user_elements)?))
|
||||
}
|
||||
|
||||
pub fn simple_native_module<'a, E: UserFunctionExecutor + 'a>(user_elements: UserDefinedElements<E>) -> Result<Arc<ModuleInstanceInterface + 'a>, Error> {
|
||||
let mut instance = ModuleInstance::new(Weak::default(), "env".into(), module().build())?;
|
||||
instance.instantiate(None)?;
|
||||
native_module(Arc::new(instance), user_elements)
|
||||
}
|
||||
|
||||
impl<'a> PartialEq for UserFunctionDescriptor {
|
||||
fn eq(&self, other: &Self) -> bool {
|
||||
self.params() == other.params()
|
||||
|
Reference in New Issue
Block a user