Avoid function call overhead during loops #275
Merged
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.

Parseable was using a pattern whereby a listing function was called in nested loops. Removing this function call and replacing it with a single assignment to a variable increases performance of these functions by ~10x (clock time).
May have a positive impact on #148
NB. just using the timing options available, i.e. unit test time, and wall clock. Siegfried unit tests are included as a convenience as they call some of the same signature init functions, it is expected this change will only impact roy.
Results
Roy unit tests
Before
After
SF unit tests
Before
After
Extend signature
Before
After