code: func (p *PageIterator) Next(ctx context.Context, v interface{}) error {
  	var err error
  	switch {
  	case p.nextPageURI.Valid:
  		err = p.client.GetNextPage(ctx, p.nextPageURI.String, v)
  	case p.count == 0:
  		err = p.client.ListResource(ctx, p.pathPart, p.data, v)
  	default:
  		return NoMoreResults
  	}
  	if err != nil {
  		return err
  	}
  	p.count++
  	return nil
  }
docs: // Next asks for the next page of resources and decodes the results into v.