ListStargazersIter returns an iterator that paginates through all results of ListStargazers.
(ctx context.Context, owner string, repo string, opts *ListOptions)
| 1345 | |
| 1346 | // ListStargazersIter returns an iterator that paginates through all results of ListStargazers. |
| 1347 | func (s *ActivityService) ListStargazersIter(ctx context.Context, owner string, repo string, opts *ListOptions) iter.Seq2[*Stargazer, error] { |
| 1348 | return func(yield func(*Stargazer, error) bool) { |
| 1349 | // Create a copy of opts to avoid mutating the caller's struct |
| 1350 | if opts == nil { |
| 1351 | opts = &ListOptions{} |
| 1352 | } else { |
| 1353 | opts = Ptr(*opts) |
| 1354 | } |
| 1355 | |
| 1356 | for { |
| 1357 | results, resp, err := s.ListStargazers(ctx, owner, repo, opts) |
| 1358 | if err != nil { |
| 1359 | yield(nil, err) |
| 1360 | return |
| 1361 | } |
| 1362 | |
| 1363 | for _, item := range results { |
| 1364 | if !yield(item, nil) { |
| 1365 | return |
| 1366 | } |
| 1367 | } |
| 1368 | |
| 1369 | if resp.NextPage == 0 { |
| 1370 | break |
| 1371 | } |
| 1372 | opts.Page = resp.NextPage |
| 1373 | } |
| 1374 | } |
| 1375 | } |
| 1376 | |
| 1377 | // ListStarredIter returns an iterator that paginates through all results of ListStarred. |
| 1378 | func (s *ActivityService) ListStarredIter(ctx context.Context, user string, opts *ActivityListStarredOptions) iter.Seq2[*StarredRepository, error] { |