Skip to content

SDK for creating waPC WebAssembly Guest Modules in Rust

License

Notifications You must be signed in to change notification settings

syrusakbary/wapc-guest-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

crates.io  travis  license

waPC Guest SDK

The waPC Guest SDK is used by Rust developers building workloads for the wasm32-unknown-unknown target that will conform to the waPC (WebAssembly Procedure Calls) specification.

This crate is used by waxosuit as a foundation for its secure, dynamic binding of cloud capabilities on top of the waPC spec.

Example

extern crate wapc_guest as guest;

use guest::prelude::*;

wapc_handler!(handle_wapc);

pub fn handle_wapc(operation: &str, msg: &[u8]) -> CallResult {
    match operation {
        "sample:Guest!Hello" => hello_world(msg),
        _ => Err("bad dispatch".into()),
    }     
}

fn hello_world(
   _msg: &[u8]) -> CallResult {
   let _res = host_call("sample:Host!Call", b"hello")?;
    Ok(vec![])
}

About

SDK for creating waPC WebAssembly Guest Modules in Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages