func (rd *OPT) Decode(b []byte, pos *int, sniffer dns.WireDecodeSniffer) (err error) {
	p0 := &b[*pos]
	for *pos < len(b) {
		v := OPT_DATA{}
		if err = v.Decode(b, pos, sniffer); err != nil {
			return
		}

		rd.Values = append(rd.Values, v)
	}
	if sniffer != nil {
		sniffer(p0, &b[*pos-1], dns.SniffRDataOPT, rd)
	}
	return
}
// Implementation of dns.Wirer
Implementation of dns.Wirer
// Implementation of dns . Wirer
func (rd *OPT) Decode(b []byte, pos *int, sniffer dns.WireDecodeSniffer) (err error) {
	p0 := &b[*pos]
	for *pos < len(b) {
		v := OPT_DATA{}
		if err = v.Decode(b, pos, sniffer); err != nil {
			return
		}
		rd.Values = append(rd.Values, v)
	}
	if sniffer != nil {
		sniffer(p0, &b[*pos-1], dns.SniffRDataOPT, rd)
	}
	return
}
func ( rd * OPT ) Decode ( b [ ] byte , pos * int , sniffer dns . WireDecodeSniffer ) ( err error ) { p0 := & b [ * pos ] for * pos < len ( b ) { v := OPT_DATA { } if err = v . Decode ( b , pos , sniffer ) ; err != nil { return } rd . Values = append ( rd . Values , v ) } if sniffer != nil { sniffer ( p0 , & b [ * pos - 1 ] , dns . SniffRDataOPT , rd ) } return }
Implementation of dns.Wirer
Implementation of dns . Wirer