pub trait TestService {
// Provided methods
fn empty_call(
&mut self,
ctx: RpcContext<'_>,
_req: Empty,
sink: UnarySink<Empty>
) { ... }
fn unary_call(
&mut self,
ctx: RpcContext<'_>,
_req: SimpleRequest,
sink: UnarySink<SimpleResponse>
) { ... }
fn cacheable_unary_call(
&mut self,
ctx: RpcContext<'_>,
_req: SimpleRequest,
sink: UnarySink<SimpleResponse>
) { ... }
fn streaming_output_call(
&mut self,
ctx: RpcContext<'_>,
_req: StreamingOutputCallRequest,
sink: ServerStreamingSink<StreamingOutputCallResponse>
) { ... }
fn streaming_input_call(
&mut self,
ctx: RpcContext<'_>,
_stream: RequestStream<StreamingInputCallRequest>,
sink: ClientStreamingSink<StreamingInputCallResponse>
) { ... }
fn full_duplex_call(
&mut self,
ctx: RpcContext<'_>,
_stream: RequestStream<StreamingOutputCallRequest>,
sink: DuplexSink<StreamingOutputCallResponse>
) { ... }
fn half_duplex_call(
&mut self,
ctx: RpcContext<'_>,
_stream: RequestStream<StreamingOutputCallRequest>,
sink: DuplexSink<StreamingOutputCallResponse>
) { ... }
fn unimplemented_call(
&mut self,
ctx: RpcContext<'_>,
_req: Empty,
sink: UnarySink<Empty>
) { ... }
}