* Refactor the `types.rs` types and structures A few changes applied along the way: * Documentation added to most methods and types. * Limits are now stored with the maximum as optional rather than a sentinel u32 value for `None`. * The `Name` type was removed in favor of just using a bare `String`. * The `Extern` prefix in the varaints of `ExternType` has been removed since it was redundant. * Accessors of `ExternType` variants no longer panic, and unwrapping versions were added with "unwrap" in the name. * Fields and methods named `r#type` were renamed to `ty` to avoid requiring a raw identifier to use them. * Remove `fail-fast: false` This was left around since the development of GitHub Actions for wasmtime, but they're no longer needed! * Fix compilation of the test-programs code * Fix compilation of wasmtime-py package * Run rustfmt
34 lines
888 B
Rust
34 lines
888 B
Rust
//! Wasmtime's embedding API
|
|
//!
|
|
//! This crate contains a high-level API used to interact with WebAssembly
|
|
//! modules. The API here is intended to mirror the proposed [WebAssembly C
|
|
//! API](https://github.com/WebAssembly/wasm-c-api), with small extensions here
|
|
//! and there to implement Rust idioms. This crate also defines the actual C API
|
|
//! itself for consumption from other languages.
|
|
|
|
#![allow(improper_ctypes)]
|
|
|
|
mod callable;
|
|
mod context;
|
|
mod externals;
|
|
mod instance;
|
|
mod module;
|
|
mod r#ref;
|
|
mod runtime;
|
|
mod trampoline;
|
|
mod trap;
|
|
mod types;
|
|
mod values;
|
|
|
|
pub mod wasm;
|
|
|
|
pub use crate::callable::Callable;
|
|
pub use crate::externals::*;
|
|
pub use crate::instance::Instance;
|
|
pub use crate::module::Module;
|
|
pub use crate::r#ref::{AnyRef, HostInfo, HostRef};
|
|
pub use crate::runtime::{Config, Engine, Store};
|
|
pub use crate::trap::Trap;
|
|
pub use crate::types::*;
|
|
pub use crate::values::*;
|