pub trait UnarySvc<R> { type Response; type Future: Future<Output = Result<Response<Self::Response>, Status>>; fn call(&mut self, req: Request<R>) -> Self::Future; }