Re-exports
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 GuestType
s 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>
.