aboutsummaryrefslogtreecommitdiff
path: root/src/resolver
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2021-05-30 12:50:08 -0700
committerGravatar Jarred Sumner <jarred@jarredsumner.com> 2021-05-30 12:50:08 -0700
commitd264d4e4ba40ae754765afcc3d134beb4521a5cd (patch)
tree33b7ba861e05570c5c848a6afcdcfbaf60e9b217 /src/resolver
parent534f9cf509a1816734ff77af0ae132069b25761c (diff)
downloadbun-d264d4e4ba40ae754765afcc3d134beb4521a5cd.tar.gz
bun-d264d4e4ba40ae754765afcc3d134beb4521a5cd.tar.zst
bun-d264d4e4ba40ae754765afcc3d134beb4521a5cd.zip
Fix Define, JSX, use more pointers for property access to minimize calls to memmove
Former-commit-id: 09ceececba22d159805662d69b8e3aad83d20590
Diffstat (limited to 'src/resolver')
-rw-r--r--src/resolver/package_json.zig11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/resolver/package_json.zig b/src/resolver/package_json.zig
index 053e00a90..303ffc2d4 100644
--- a/src/resolver/package_json.zig
+++ b/src/resolver/package_json.zig
@@ -133,12 +133,11 @@ pub const PackageJSON = struct {
//
if (json.asProperty("browser")) |browser_prop| {
switch (browser_prop.expr.data) {
- .e_object => {
- const obj = browser_prop.expr.getObject();
+ .e_object => |obj| {
// The value is an object
// Remap all files in the browser field
- for (obj.properties) |prop| {
+ for (obj.properties) |*prop| {
var _key_str = (prop.key orelse continue).asString(r.allocator) orelse continue;
const value: js_ast.Expr = prop.value orelse continue;
@@ -154,13 +153,11 @@ pub const PackageJSON = struct {
const key = r.allocator.dupe(u8, r.fs.normalize(_key_str)) catch unreachable;
switch (value.data) {
- .e_string => {
- const str = value.getString();
+ .e_string => |str| {
// If this is a string, it's a replacement package
package_json.browser_map.put(key, str.string(r.allocator) catch unreachable) catch unreachable;
},
- .e_boolean => {
- const boolean = value.getBoolean();
+ .e_boolean => |boolean| {
if (!boolean.value) {
package_json.browser_map.put(key, "") catch unreachable;
}