core/resolver/resolver.go
2023-10-26 22:20:46 +08:00

22 lines
422 B
Go

package resolver
import (
"context"
"errors"
"net"
)
var (
ErrInvalid = errors.New("invalid resolver")
)
type Options struct{}
type Option func(opts *Options)
type Resolver interface {
// Resolve returns a slice of the host's IPv4 and IPv6 addresses.
// The network should be 'ip', 'ip4' or 'ip6', default network is 'ip'.
Resolve(ctx context.Context, network, host string, opts ...Option) ([]net.IP, error)
}