diff options
author | 2021-09-21 14:40:19 -0700 | |
---|---|---|
committer | 2021-09-21 14:40:19 -0700 | |
commit | 8e86d2cf1d145fc89d8ef24a646a71ce4214453e (patch) | |
tree | 5fd0ce5afd45817906e675bced8fe38e8cb4b66d /src/resolver/package_json.zig | |
parent | 4e12a4c0130aa652388db3d1c2cbfeca3f19b1e2 (diff) | |
download | bun-8e86d2cf1d145fc89d8ef24a646a71ce4214453e.tar.gz bun-8e86d2cf1d145fc89d8ef24a646a71ce4214453e.tar.zst bun-8e86d2cf1d145fc89d8ef24a646a71ce4214453e.zip |
Add comment explaining failed package.json parsing optimization
Diffstat (limited to 'src/resolver/package_json.zig')
-rw-r--r-- | src/resolver/package_json.zig | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/resolver/package_json.zig b/src/resolver/package_json.zig index 00b736eba..90a9392f6 100644 --- a/src/resolver/package_json.zig +++ b/src/resolver/package_json.zig @@ -479,6 +479,11 @@ pub const PackageJSON = struct { .main_fields = MainFieldMap.init(r.allocator), }; + // Note: we tried rewriting this to be fewer loops over all the properties (asProperty loops over each) + // The end result was: it's not faster! Sometimes, it's slower. + // It's hard to say why. + // Feels like a codegen issue. + // or that looping over every property doesn't really matter because most package.jsons are < 20 properties if (json.asProperty("version")) |version_json| { if (version_json.expr.asString(r.allocator)) |version_str| { if (version_str.len > 0) { |