code: func (c designateClient) ForEachZone(handler func(zone *zones.Zone) error) error {
  	pager := zones.List(c.serviceClient, zones.ListOpts{})
  	return pager.EachPage(
  		func(page pagination.Page) (bool, error) {
  			list, err := zones.ExtractZones(page)
  			if err != nil {
  				return false, err
  			}
  			for _, zone := range list {
  				err := handler(&zone)
  				if err != nil {
  					return false, err
  				}
  			}
  			return true, nil
  		},
  	)
  }
docs: // ForEachZone calls handler for each zone managed by the Designate