package grpc // Client represents client for exchanging messages // with a remote server using gRPC protocol. type Client struct { *cfg } // Option is a Client's constructor option. type Option func(*cfg) // New creates, configures via options and returns new Client instance. func New(opts ...Option) *Client { c := defaultCfg() for _, opt := range opts { opt(c) } return &Client{ cfg: c, } }