1#![deny(missing_docs, trivial_numeric_casts, unused_extern_crates)]
4#![deny(trivial_numeric_casts, unused_extern_crates)]
5#![warn(unused_import_braces)]
6#![allow(clippy::new_without_default)]
7#![warn(
8 clippy::float_arithmetic,
9 clippy::mut_mut,
10 clippy::nonminimal_bool,
11 clippy::map_unwrap_or,
12 clippy::print_stdout,
13 clippy::unicode_not_nfc,
14 clippy::use_self
15)]
16
17mod artifact;
18mod export;
19mod func_data_registry;
20mod global;
21mod imports;
22mod instance;
23mod memory;
24mod mmap;
25mod probestack;
26mod resolver;
27mod sig_registry;
28mod table;
29mod trap;
30mod tunables;
31mod vmcontext;
32mod vmoffsets;
33
34pub mod libcalls;
35
36pub use crate::artifact::{Artifact, Instantiatable};
37pub use crate::export::*;
38pub use crate::func_data_registry::{FuncDataRegistry, VMFuncRef};
39pub use crate::global::*;
40pub use crate::imports::{Imports, VMImport, VMImportType};
41pub use crate::instance::{
42 initialize_host_envs, ImportFunctionEnv, ImportInitializerFuncPtr, InstanceAllocator,
43 InstanceHandle, WeakOrStrongInstanceRef,
44};
45pub use crate::memory::{LinearMemory, Memory, MemoryError, MemoryStyle};
46pub use crate::mmap::Mmap;
47pub use crate::probestack::PROBESTACK;
48pub use crate::resolver::{
49 ChainableNamedResolver, Export, ExportFunction, ExportFunctionMetadata, NamedResolver,
50 NamedResolverChain, NullResolver, Resolver,
51};
52pub use crate::sig_registry::{SignatureRegistry, VMSharedSignatureIndex};
53pub use crate::table::{LinearTable, Table, TableElement, TableStyle};
54pub use crate::trap::*;
55pub use crate::tunables::{TestTunables, Tunables};
56pub use crate::vmcontext::{
57 FunctionBodyPtr, FunctionExtent, SectionBodyPtr, VMBuiltinFunctionIndex,
58 VMCallerCheckedAnyfunc, VMContext, VMDynamicFunctionContext, VMFunctionBody,
59 VMFunctionEnvironment, VMFunctionImport, VMFunctionKind, VMGlobalDefinition, VMGlobalImport,
60 VMLocalFunction, VMMemoryDefinition, VMMemoryImport, VMTableDefinition, VMTableImport,
61 VMTrampoline,
62};
63pub use crate::vmoffsets::{TargetSharedSignatureIndex, VMOffsets};
64#[deprecated(
65 since = "2.1.0",
66 note = "ModuleInfo, ExportsIterator, ImportsIterator should be imported from unc_vm_types."
67)]
68pub use unc_vm_types::ModuleInfo;
69pub use unc_vm_types::VMExternRef;
70
71pub const VERSION: &str = env!("CARGO_PKG_VERSION");