{"id":18985169,"url":"https://github.com/potatomaster101/rfrange","last_synced_at":"2026-06-13T21:33:19.700Z","repository":{"id":115197887,"uuid":"291043061","full_name":"PotatoMaster101/rfrange","owner":"PotatoMaster101","description":"Control a range in C++'s range-based for loops","archived":false,"fork":false,"pushed_at":"2021-08-27T10:07:10.000Z","size":61,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-10T21:08:59.381Z","etag":null,"topics":["cpp17","header-only","loops","mit-license","ranged-for"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PotatoMaster101.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-08-28T12:38:29.000Z","updated_at":"2021-08-27T10:07:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"47cac271-5a82-4444-9cbd-c021db45e2c9","html_url":"https://github.com/PotatoMaster101/rfrange","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PotatoMaster101/rfrange","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PotatoMaster101%2Frfrange","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PotatoMaster101%2Frfrange/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PotatoMaster101%2Frfrange/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PotatoMaster101%2Frfrange/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PotatoMaster101","download_url":"https://codeload.github.com/PotatoMaster101/rfrange/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PotatoMaster101%2Frfrange/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34301731,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-13T02:00:06.617Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp17","header-only","loops","mit-license","ranged-for"],"created_at":"2024-11-08T16:24:57.067Z","updated_at":"2026-06-13T21:33:19.652Z","avatar_url":"https://github.com/PotatoMaster101.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ranged For Range\nControls a range for C++'s range-based `for` loops. Useful for skipping over some starting/ending elements when using range-based `for`. Tested with C++17.\n\n## Quick Start\n### Using Random Access Iterator\n```cpp\nstd::vector\u003cint\u003e v{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};\nfor (const auto\u0026 n : rf::range{v.begin() + 3, v.end() - 2})\n    std::cout \u003c\u003c n \u003c\u003c ' ';     // will print 4 5 6 7 8\n```\n\n### Using Bidirectional Iterator\n```cpp\nstd::list\u003cint\u003e l{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};\nfor (const auto\u0026 n : rf::range{std::next(l.begin(), 3), std::prev(l.end(), 2)})\n    std::cout \u003c\u003c n \u003c\u003c ' ';     // will print 4 5 6 7 8\n```\n\n## Building Test\n```\n$ cmake -B bin -DRFRANGE_BUILD_TESTS=1\n$ cmake --build bin\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpotatomaster101%2Frfrange","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpotatomaster101%2Frfrange","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpotatomaster101%2Frfrange/lists"}