macro_rules! facade {
($(#[$meta:meta])* $name:ident => $accessor:ty) => { ... };
}Expand description
Declare a facade type and its Facade impl.
pub struct Clock {
pub now: u64,
}
facade!(
/// Reads the application clock.
Time => Clock
);
let app = Application::new(".");
app.instance(Clock { now: 1 });
rainier_container::set_facade_application(Arc::new(app));
assert_eq!(Time::instance().now, 1);