[PR #149] [MERGED] refactor: replace duplicated paginator methods with shared PaginatorCallPattern #261

Closed
opened 2026-03-15 11:56:23 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/awslabs/iam-policy-autopilot/pull/149
Author: @adpaco-aws
Created: 2/11/2026
Status: Merged
Merged: 2/13/2026
Merged by: @adpaco-aws

Base: mainHead: refactor-paginator-call-pattern


📝 Commits (2)

  • 5f53fff refactor: replace duplicated paginator methods with shared PaginatorCallPattern
  • be96b03 Pass language instead of method to create_synthetic_calls

📊 Changes

5 files changed (+179 additions, -226 deletions)

View changed files

📝 iam-policy-autopilot-policy-generation/src/extraction/go/paginator_extractor.rs (+9 -78)
📝 iam-policy-autopilot-policy-generation/src/extraction/go/waiter_extractor.rs (+3 -3)
📝 iam-policy-autopilot-policy-generation/src/extraction/python/paginator_extractor.rs (+17 -125)
📝 iam-policy-autopilot-policy-generation/src/extraction/python/waiters_extractor.rs (+3 -13)
📝 iam-policy-autopilot-policy-generation/src/extraction/shared/extraction_utils.rs (+147 -7)

📄 Description

Issue #, if available: Follow-up to #139

Description of changes:

Replace the duplicated synthetic call creation methods in Python and Go paginator extractors with a shared PaginatorCallPattern enum in extraction_utils.rs. This follows the same pattern established in PR #139 for waiter extraction.

This eliminates 5 methods related to synthetic call creation (~170 lines of duplicated code) and makes the paginator extraction logic consistent with the waiter extraction approach.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/awslabs/iam-policy-autopilot/pull/149 **Author:** [@adpaco-aws](https://github.com/adpaco-aws) **Created:** 2/11/2026 **Status:** ✅ Merged **Merged:** 2/13/2026 **Merged by:** [@adpaco-aws](https://github.com/adpaco-aws) **Base:** `main` ← **Head:** `refactor-paginator-call-pattern` --- ### 📝 Commits (2) - [`5f53fff`](https://github.com/awslabs/iam-policy-autopilot/commit/5f53fff41fa5302de1a6f8b46de25486cd5d36f6) refactor: replace duplicated paginator methods with shared `PaginatorCallPattern` - [`be96b03`](https://github.com/awslabs/iam-policy-autopilot/commit/be96b030a30e35e1324e431cd542b35655a3bcd7) Pass language instead of method to `create_synthetic_calls` ### 📊 Changes **5 files changed** (+179 additions, -226 deletions) <details> <summary>View changed files</summary> 📝 `iam-policy-autopilot-policy-generation/src/extraction/go/paginator_extractor.rs` (+9 -78) 📝 `iam-policy-autopilot-policy-generation/src/extraction/go/waiter_extractor.rs` (+3 -3) 📝 `iam-policy-autopilot-policy-generation/src/extraction/python/paginator_extractor.rs` (+17 -125) 📝 `iam-policy-autopilot-policy-generation/src/extraction/python/waiters_extractor.rs` (+3 -13) 📝 `iam-policy-autopilot-policy-generation/src/extraction/shared/extraction_utils.rs` (+147 -7) </details> ### 📄 Description Issue #, if available: Follow-up to #139 Description of changes: Replace the duplicated synthetic call creation methods in Python and Go paginator extractors with a shared `PaginatorCallPattern` enum in `extraction_utils.rs`. This follows the same pattern established in PR #139 for waiter extraction. This eliminates 5 methods related to synthetic call creation (~170 lines of duplicated code) and makes the paginator extraction logic consistent with the waiter extraction approach. By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-15 11:56:23 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/iam-policy-autopilot#261
No description provided.