var EnableSRVLookups …
var MinResolutionInterval …
var ResolvingTimeout …
var logger …
func init() { … }
const defaultPort …
const defaultDNSSvrPort …
const golang …
const txtPrefix …
const txtAttribute …
var addressDialer …
var newNetResolver …
func NewBuilder() resolver.Builder { … }
type dnsBuilder …
func (b *dnsBuilder) Build(target resolver.Target, cc resolver.ClientConn, opts resolver.BuildOptions) (resolver.Resolver, error) { … }
func (b *dnsBuilder) Scheme() string { … }
type deadResolver …
func (deadResolver) ResolveNow(resolver.ResolveNowOptions) { … }
func (deadResolver) Close() { … }
type dnsResolver …
func (d *dnsResolver) ResolveNow(resolver.ResolveNowOptions) { … }
func (d *dnsResolver) Close() { … }
func (d *dnsResolver) watcher() { … }
func (d *dnsResolver) lookupSRV(ctx context.Context) ([]resolver.Address, error) { … }
func handleDNSError(err error, lookupType string) error { … }
func (d *dnsResolver) lookupTXT(ctx context.Context) *serviceconfig.ParseResult { … }
func (d *dnsResolver) lookupHost(ctx context.Context) ([]resolver.Address, error) { … }
func (d *dnsResolver) lookup() (*resolver.State, error) { … }
func formatIP(addr string) (addrIP string, ok bool) { … }
func parseTarget(target, defaultPort string) (host, port string, err error) { … }
type rawChoice …
func containsString(a *[]string, b string) bool { … }
func chosenByPercentage(a *int) bool { … }
func canaryingSC(js string) string { … }