Macro portunusd::define_server_procedure [−][src]
macro_rules! define_server_procedure { ($i:ident($a:ident: &[u8]) -> Vec<u8> $b:block) => { ... }; }
Expand description
Create a function that can respond to door invocations!
Your function will need to accept a slice of u8
and return Vec<u8>
. As an example, consider
the server procedure below which greets a telnet user:
use portunusd::define_server_procedure; use std::fmt::format; use std::str::from_utf8; define_server_procedure!(Hello(request: &[u8]) -> Vec<u8> { match from_utf8(request) { Err(_) => vec![], Ok(name) => { let response = format!("Hello, {}!", name); response.into_bytes() } } });