Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ENHANCEMENT] Improve performance in SpecValidation.validateSettings function #1521

Open
zewuchen opened this issue Dec 1, 2024 · 0 comments

Comments

@zewuchen
Copy link

zewuchen commented Dec 1, 2024

Descrição:

Hello there, it's my first time here!

I was reading how XcodeGen works and I noticed an improvement using early break in loops on SpecValidation.validateSettings that can be done.

Snipped of code that I would change
image

My points to consider here:

  1. Reduce nested if, the condition on line 23 errors.append(.invalidBuildSettingConfig(config)) happens when line 21 and 22 it's true, so don't need to have 2 ifs, instead can be only 1 with 2 validations.
  2. Early break in loops
    2.1. On loop in line 32, once the validation at line 33 it's true, in line 34 sets isConfig = true and isConfig will never be false in the rest of iteration of line 32, so it's no longer necessary iterate over the rest
    2.2. Using the same idea on 2.1, on the outer loop at line 30, once the validation at line 37 it's true, in line 38 sets allConfigs = false and allConfigs will never be true again. So the outer loop can be stopped.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant