code: func (p *RcodeZeroProvider) Zones() ([]*rc0.Zone, error) {
  
  	var result []*rc0.Zone
  
  	zones, err := p.fetchZones()
  	if err != nil {
  		return nil, err
  	}
  
  	for _, zone := range zones {
  		if p.DomainFilter.Match(zone.Domain) {
  			result = append(result, zone)
  		}
  	}
  
  	return result, nil
  }
docs: // Zones returns filtered zones if filter is set