Skip to content
Guest SDK for building cloud-native WebAssembly modules in Rust
Rust
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
.gitignore
.travis.yml
Cargo.toml
LICENSE.txt
README.md

README.md

crates.io  travis  license

Wascap Guest SDK

The Wascap Guest SDK is used by Rust developers building cloud-native workloads for the wasm32-unknown-unknown target. Using Waxosuit to host your WebAssembly module allows you to stop worrying about all of the non-functional requirements and boilerplate that typically bogs down all of our development time and focus squarely on compiling the business logic in a portable, secure Wasm module.

For more documentation, tutorials, examples, etc please check out the waxosuit website.

Example

extern crate wascap_guest as guest;
 
use guest::prelude::*;
 
call_handler!(handle_call);
 
pub fn handle_call(ctx: &CapabilitiesContext, cmd: &Command) -> Result<Event> {
    match cmd.payload {
        Some(ref p) => match p.type_url.as_ref() {
            http::TYPE_URL_HTTP_REQUEST => hello_world(ctx, p.value.as_slice()),
            core::TYPE_URL_HEALTH_REQUEST => Ok(Event::success()),
            _ => Ok(Event::bad_dispatch(&p.type_url)),
        },
        None => Ok(http::Response::bad_request().as_event(true, None)),
    }
}

fn hello_world(
   ctx: &CapabilitiesContext,
   payload: impl Into<http::Request>) -> Result<Event> {
    Ok(http::Response::ok().as_event(true, None))
}
You can’t perform that action at this time.