use wapc_guest::host_call;
use crate::HandlerResult;
pub struct UntypedHostBinding {
binding: String,
}
pub fn host(binding: &str) -> UntypedHostBinding {
UntypedHostBinding {
binding: binding.to_string(),
}
}
pub fn default() -> UntypedHostBinding {
UntypedHostBinding {
binding: "default".to_string(),
}
}
impl UntypedHostBinding {
pub fn call(&self, capid: &str, operation: &str, payload: Vec<u8>) -> HandlerResult<Vec<u8>> {
host_call(&self.binding, capid, operation, &payload).map_err(|e| e.into())
}
}