Re-exports

pub extern crate tracing;
pub use anyhow;
pub use bitflags;
pub use witx;

Modules

Macros

This macro expands to a set of pub Rust modules:

Define the structs required to integrate a Wiggle implementation with Wasmtime.

Structs

A handle to a borrow on linear memory. It is produced by {mut, shared}_borrow and consumed by {mut, shared}_unborrow. Only the GuestMemory impl should ever construct a BorrowHandle or inspect its contents.

A guest pointer into host memory.

A smart pointer to an shareable slice in guest memory. Usable as a &'a [T] via std::ops::Deref.

A smart pointer to a mutable slice in guest memory. Usable as a &'a [T] via std::ops::Deref and as a &'a mut [T] via std::ops::DerefMut.

A smart pointer to an shareable str in guest memory. Usable as a &'a str via std::ops::Deref.

A smart pointer to a mutable str in guest memory. Usable as a &'a str via std::ops::Deref and as a &'a mut str via std::ops::DerefMut.

Represents a contiguous region in memory.

Enums

A runtime-independent way for Wiggle to terminate WebAssembly execution. Functions that are marked (@witx noreturn) will always return a Trap. Other functions that want to Trap can do so via their UserErrorConversion trait, which transforms the user’s own error type into a Result<abierror, Trap>.

Traits

A trait for types which are used to report errors. Each type used in the first result position of an interface function is used, by convention, to indicate whether the function was successful and subsequent results are valid, or whether an error occured. This trait allows wiggle to return the correct value when the interface function’s idiomatic Rust method returns Ok().

A trait which abstracts how to get at the region of host memory that contains guest memory.

A trait for types that are intended to be pointees in GuestPtr<T>.

A trait for GuestTypes that have the same representation in guest memory as in Rust. These types can be used with the GuestPtr::as_slice method to view as a slice.

Types that can be pointed to by GuestPtr<T>.

Functions

Attribute Macros