Codechange: Replace more FOR_ALL_XXX macros with range-based for loops #9149
+47
−59
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation / Problem
Continuing to reduce the number of FOR_XXX macro when it's possible.
Description
FOR_ALL_TARS
was a basic iteration using_tar_filelist[sd].begin()
and_tar_filelist[sd].end()
, so I just replaced all usage by direct range-based for loops using_tar_filelist[sd]
.FOR_ALL_SEARCHPATHS
was iterating all theSearchpath
enum, skipping empty searchpaths. As all these searchpaths are set only once inDeterminePaths()
, I think it's simpler to just store valid searchpaths once they're set, and then use this stored value directly in for loops.FOR_ALL_ROADTRAMTYPES
is a range-based for loop with direct initialisation in the macro. It's better to add a static array with the 2 values, and use that in explicit for loops.Limitations
Checklist for review
Some things are not automated, and forgotten often. This list is a reminder for the reviewers.