src: general C++ cleanup in node_url.cc
-
Merge
domain
andopaque
storage 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
URLHost
objects 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_SET
andUTF8STRING
to be macros. Also,GET
would previously create a JS string instance for 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 -
commit message follows commit guidelines