src: general C++ cleanup in node_url.cc#19598
Closed
addaleax wants to merge 2 commits intonodejs:masterfrom
Closed
src: general C++ cleanup in node_url.cc#19598addaleax wants to merge 2 commits intonodejs:masterfrom
addaleax wants to merge 2 commits intonodejs:masterfrom
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Merge
domainandopaquestorage in URL parser:This just simplifies the code a bit, having multiple fields
in an union with the same type is usually just overhead.
Add move variant of
URLHost::ToString():This helps avoid unnecessary string copy operations, especially
since we control the lifetime of
URLHostobjects pretty well.Use const refs in node_url.cc where appropriate
Remove or reduce overly generous
.reserve()calls:These would otherwise keep a lot of unused memory lying around.
Return return values instead of unnecessary pointer arguments
Use more common/expressive variable names
Avoid macro use, reduce number of unnecessary JS strings:
There’s no reason for
GET,GET_AND_SETandUTF8STRINGto bemacros. Also,
GETwould previously create a JS string instancefor each single call, even though the strings it was called
with were compile-time constants.
Avoid unnecessary JS casts when the type of a value is known
Avoid (commonly unnecessary) copy for whitespace stripping
Checklist
make -j4 test(UNIX), orvcbuild test(Windows) passes