8 // Dialers have the network locked in.
9 type Dialer interface {
10 Dial(_ context.Context, addr string) (net.Conn, error)
11 DialerNetwork() string
14 // An interface to ease wrapping dialers that explicitly include a network parameter.
15 type DialContexter interface {
16 DialContext(ctx context.Context, network, addr string) (net.Conn, error)
19 // Used by wrappers of standard library network types.
20 var DefaultNetDialer = &net.Dialer{}
22 // Adapts a DialContexter to the Dial interface in this package.
23 type NetworkDialer struct {
28 func (me NetworkDialer) DialerNetwork() string {
32 func (me NetworkDialer) Dial(ctx context.Context, addr string) (_ net.Conn, err error) {
33 return me.Dialer.DialContext(ctx, me.Network, addr)