///|
/// A versioned request boundary for acquired or embedded host implementations.
/// Capabilities must describe the host's actual operations and targets.
pub(all) struct Provider {
describe : () -> Json raise
request : (Json) -> Json raise
}
///|
pub fn Host::provider(self : Host) -> Provider {
{
describe: fn() raise {
self.request(object([("operation", Json::string("info"))]))
},
request: fn(request) raise { self.request(request) },
}
}