1 unstable release

0.1.0 Dec 3, 2024

#2387 in Procedural macros

Download history 140/week @ 2024-12-01 15/week @ 2024-12-08 5/week @ 2024-12-15

160 downloads per month
Used in celestia-grpc

Apache-2.0

6KB
84 lines

Helper crate for grpc_method macro for creating a tonic gRPC client, used by celestia-grpc.

Example

use celestia_proto::cosmos::auth::v1beta1::query_client::QueryClient;
use tonic::service::Interceptor;
use tonic::transport::Channel;

pub struct GrpcClient<I>
where
   I: Interceptor,
{
    grpc_channel: Channel,
    auth_interceptor: I,
}

impl<I> GrpcClient<I>
where
    I: Interceptor + Clone,
{
    /// Get auth params
    #[grpc_method(AuthQueryClient::params)]
    async fn get_auth_params(&mut self) -> Result<AuthParams, Error>;
}

Dependencies

~225–660KB
~16K SLoC