perf(syrup): Minimize expensive operations when encoding #2000
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.
refs: #1984
Description
encodeString
:length
to avoid re-reading.encodeArray
:encodeAny
:(In the absence of errors, the associated string concatenation doesn't even take place.)
Effect
Before:
After:
Security Considerations
None known.
Scaling Considerations
For large strings, performance is still dominated by currently-unavoidable O(n) operations.
Documentation Considerations
n/a
Testing Considerations
n/a
Upgrade Considerations
n/a