tonic/client/
mod.rs

1//! Generic client implementation.
2//!
3//! This module contains the low level components to build a gRPC client. It
4//! provides a codec agnostic gRPC client dispatcher and a decorated tower
5//! service trait.
6//!
7//! This client is generally used by some code generation tool to provide stubs
8//! for the gRPC service. Thusly, they are a bit cumbersome to use by hand.
9//!
10//! ## Concurrent usage
11//!
12//! Upon using the your generated client, you will discover all the functions
13//! corresponding to your rpc methods take `&mut self`, making concurrent
14//! usage of the client difficult. The answer is simply to clone the client,
15//! which is cheap as all client instances will share the same channel for
16//! communication. For more details, see
17//! [transport::Channel](../transport/struct.Channel.html#multiplexing-requests).
18
19mod grpc;
20mod service;
21
22pub use self::grpc::Grpc;
23pub use self::service::GrpcService;