xref: /tonic/tests/use_arc_self/src/lib.rs (revision 23602b47)
1 #![allow(unused_imports)]
2 
3 use std::sync::Arc;
4 use tokio_stream::{Stream, StreamExt};
5 use tonic::{Request, Response, Status};
6 
7 tonic::include_proto!("test");
8 
9 #[derive(Debug, Default)]
10 struct Svc;
11 
12 #[tonic::async_trait]
13 impl test_server::Test for Svc {
test_request( self: Arc<Self>, req: Request<SomeData>, ) -> Result<Response<SomeData>, Status>14     async fn test_request(
15         self: Arc<Self>,
16         req: Request<SomeData>,
17     ) -> Result<Response<SomeData>, Status> {
18         Ok(Response::new(req.into_inner()))
19     }
20 }
21