aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred SUmner <jarred@jarredsumner.com> 2023-01-26 23:01:11 -0800
committerGravatar Jarred SUmner <jarred@jarredsumner.com> 2023-01-26 23:04:37 -0800
commit915b46768c40a0c8649952bf1675625d1f4479f3 (patch)
tree27ab4a992fa3b1505fc0d915d57f26da517f2d46
parent7169bbbb9c9a24bfd7b7926d5f45dfe4ef3ff759 (diff)
downloadbun-915b46768c40a0c8649952bf1675625d1f4479f3.tar.gz
bun-915b46768c40a0c8649952bf1675625d1f4479f3.tar.zst
bun-915b46768c40a0c8649952bf1675625d1f4479f3.zip
Remove usages of assumeSentinel
-rw-r--r--src/bun.js/base.zig4
-rw-r--r--src/bun.js/bindings/bindings.zig4
-rw-r--r--src/bun.js/module_loader.zig2
-rw-r--r--src/bun.js/node/types.zig4
-rw-r--r--src/cli.zig4
-rw-r--r--src/cli/run_command.zig6
-rw-r--r--src/install/install.zig13
-rw-r--r--src/linux_c.zig4
-rw-r--r--src/string_types.zig2
9 files changed, 19 insertions, 24 deletions
diff --git a/src/bun.js/base.zig b/src/bun.js/base.zig
index 6e9c262c8..f2a305564 100644
--- a/src/bun.js/base.zig
+++ b/src/bun.js/base.zig
@@ -1363,7 +1363,7 @@ pub fn NewClassWithInstanceType(
};
__static_functions[count] = js.JSStaticFunction{
- .name = std.meta.assumeSentinel(function_name_literal ++ [_]u8{0}, 0),
+ .name = bun.sliceTo(function_name_literal ++ [_]u8{0}, 0).ptr,
.callAsFunction = if (Func.calling_convention == .C) &CtxField.rfn else &To.JS.Callback(
PointerType,
if (@typeInfo(@TypeOf(ctxfn)) == .Pointer) ctxfn.* else ctxfn,
@@ -1396,7 +1396,7 @@ pub fn NewClassWithInstanceType(
};
__static_functions[count] = js.JSStaticFunction{
- .name = std.meta.assumeSentinel(function_name_literal ++ [_]u8{0}, 0),
+ .name = (function_name_literal ++ [_]u8{0})[0..function_name_literal.len :0],
.callAsFunction = &To.JS.Callback(
ZigType,
@field(staticFunctions, function_name_literal),
diff --git a/src/bun.js/bindings/bindings.zig b/src/bun.js/bindings/bindings.zig
index 0c1f21bba..9a775990c 100644
--- a/src/bun.js/bindings/bindings.zig
+++ b/src/bun.js/bindings/bindings.zig
@@ -368,7 +368,7 @@ pub const ZigString = extern struct {
}
pub fn sliceZ(this: Slice) [:0]const u8 {
- return std.meta.assumeSentinel(this.ptr[0..this.len], 0);
+ return this.ptr[0..this.len:0];
}
pub fn toSliceZ(this: Slice, buf: []u8) [:0]const u8 {
@@ -386,7 +386,7 @@ pub const ZigString = extern struct {
std.mem.copy(u8, buf[0..this.len], this.slice());
buf[this.len] = 0;
- return std.meta.assumeSentinel(buf[0..this.len], 0);
+ return buf[0..this.len:0];
}
pub fn mut(this: Slice) []u8 {
diff --git a/src/bun.js/module_loader.zig b/src/bun.js/module_loader.zig
index 12b4f0463..aab47ade3 100644
--- a/src/bun.js/module_loader.zig
+++ b/src/bun.js/module_loader.zig
@@ -119,7 +119,7 @@ fn jsModuleFromFile(from_path: string, comptime input: string) string {
var buf: [bun.MAX_PATH_BYTES]u8 = undefined;
var absolute_path_to_use = Fs.FileSystem.instance.absBuf(&parts, &buf);
buf[absolute_path_to_use.len] = 0;
- file = std.fs.openFileAbsoluteZ(std.meta.assumeSentinel(absolute_path_to_use.ptr, 0), .{ .mode = .read_only }) catch {
+ file = std.fs.openFileAbsoluteZ(absolute_path_to_use[0.. :0], .{ .mode = .read_only }) catch {
const WarnOnce = struct {
pub var warned = false;
};
diff --git a/src/bun.js/node/types.zig b/src/bun.js/node/types.zig
index 5da5aa511..79e55d8c7 100644
--- a/src/bun.js/node/types.zig
+++ b/src/bun.js/node/types.zig
@@ -580,7 +580,7 @@ pub const PathLike = union(Tag) {
pub inline fn sliceZAssume(
this: PathLike,
) [:0]const u8 {
- return std.meta.assumeSentinel(this.slice(), 0);
+ return this.slice()[0.. :0];
}
pub fn toJS(this: PathLike, ctx: JSC.C.JSContextRef, exception: JSC.C.ExceptionRef) JSC.C.JSValueRef {
@@ -2003,7 +2003,7 @@ pub const Process = struct {
// However, this might be called many times in a row, so we use a pre-allocated buffer
// that way we don't have to worry about garbage collector
JSC.VirtualMachine.get().bundler.fs.top_level_dir = std.os.getcwd(&JSC.VirtualMachine.get().bundler.fs.top_level_dir_buf) catch {
- _ = Syscall.chdir(std.meta.assumeSentinel(JSC.VirtualMachine.get().bundler.fs.top_level_dir, 0));
+ _ = Syscall.chdir(@ptrCast([:0]const u8, JSC.VirtualMachine.get().bundler.fs.top_level_dir));
return JSC.toInvalidArguments("Invalid path", .{}, globalObject.ref());
};
diff --git a/src/cli.zig b/src/cli.zig
index 233e9438d..01adffee8 100644
--- a/src/cli.zig
+++ b/src/cli.zig
@@ -258,9 +258,7 @@ pub const Arguments = struct {
fn getHomeConfigPath(buf: *[bun.MAX_PATH_BYTES]u8) ?[:0]const u8 {
if (bun.getenvZ("XDG_CONFIG_HOME") orelse bun.getenvZ("HOME")) |data_dir| {
var paths = [_]string{".bunfig.toml"};
- var outbuf = resolve_path.joinAbsStringBuf(data_dir, buf, &paths, .auto);
- buf[outbuf.len] = 0;
- return std.meta.assumeSentinel(outbuf, 0);
+ return resolve_path.joinAbsStringBufZ(data_dir, buf, &paths, .auto);
}
return null;
diff --git a/src/cli/run_command.zig b/src/cli/run_command.zig
index e5cb95333..75539578b 100644
--- a/src/cli/run_command.zig
+++ b/src/cli/run_command.zig
@@ -325,7 +325,7 @@ pub const RunCommand = struct {
if (err == error.AccessDenied) {
{
var stat = std.mem.zeroes(std.c.Stat);
- const rc = bun.C.stat(std.meta.assumeSentinel(executable, 0), &stat);
+ const rc = bun.C.stat(executable[0.. :0].ptr, &stat);
if (rc == 0) {
if (std.os.S.ISDIR(stat.mode)) {
Output.prettyErrorln("<r><red>error<r>: Failed to run directory \"<b>{s}<r>\"\n", .{executable});
@@ -396,7 +396,7 @@ pub const RunCommand = struct {
var retried = false;
if (!strings.endsWithComptime(std.mem.span(std.os.argv[0]), "node")) {
- var argv0 = std.meta.assumeSentinel(optional_bun_path.*, 0).ptr;
+ var argv0 = optional_bun_path.*[0.. :0].ptr;
// if we are already an absolute path, use that
// if the user started the application via a shebang, it's likely that the path is absolute already
@@ -408,7 +408,7 @@ pub const RunCommand = struct {
var self = std.fs.selfExePath(&self_exe_bin_path_buf) catch unreachable;
if (self.len > 0) {
self.ptr[self.len] = 0;
- argv0 = std.meta.assumeSentinel(self, 0).ptr;
+ argv0 = self[0.. :0].ptr;
optional_bun_path.* = self;
}
}
diff --git a/src/install/install.zig b/src/install/install.zig
index fb955bc70..95df2b337 100644
--- a/src/install/install.zig
+++ b/src/install/install.zig
@@ -4703,7 +4703,7 @@ pub const PackageManager = struct {
.auto,
);
buf[lockfile_path.len] = 0;
- var lockfile_path_z = std.meta.assumeSentinel(buf[0..lockfile_path.len], 0);
+ var lockfile_path_z = buf[0..lockfile_path.len :0];
const result = manager.lockfile.loadFromDisk(
allocator,
@@ -5913,7 +5913,7 @@ pub const PackageManager = struct {
} else {
@memcpy(&this.folder_path_buf, folder.ptr, folder.len);
this.folder_path_buf[folder.len] = 0;
- installer.cache_dir_subpath = std.meta.assumeSentinel(this.folder_path_buf[0..folder.len], 0);
+ installer.cache_dir_subpath = this.folder_path_buf[0..folder.len :0];
}
installer.cache_dir = .{ .dir = std.fs.cwd() };
},
@@ -5925,7 +5925,7 @@ pub const PackageManager = struct {
} else {
@memcpy(&this.folder_path_buf, folder.ptr, folder.len);
this.folder_path_buf[folder.len] = 0;
- installer.cache_dir_subpath = std.meta.assumeSentinel(this.folder_path_buf[0..folder.len], 0);
+ installer.cache_dir_subpath = this.folder_path_buf[0..folder.len :0];
}
installer.cache_dir = .{ .dir = std.fs.cwd() };
},
@@ -5974,10 +5974,7 @@ pub const PackageManager = struct {
remain = remain[folder.len..];
remain[0] = 0;
const len = @ptrToInt(remain.ptr) - @ptrToInt(ptr);
- installer.cache_dir_subpath = std.meta.assumeSentinel(
- this.folder_path_buf[0..len :0],
- 0,
- );
+ installer.cache_dir_subpath = this.folder_path_buf[0..len :0];
installer.cache_dir = directory;
}
},
@@ -6466,7 +6463,7 @@ pub const PackageManager = struct {
var result = try bun.getFdPath(manager.options.global_bin_dir.dir.fd, &out_buffer);
out_buffer[result.len] = 0;
var result_: [:0]u8 = out_buffer[0..result.len :0];
- manager.options.bin_path = std.meta.assumeSentinel(try FileSystem.instance.dirname_store.append([:0]u8, result_), 0);
+ manager.options.bin_path = (try FileSystem.instance.dirname_store.append([:0]u8, result_))[0.. :0];
}
pub fn startProgressBarIfNone(manager: *PackageManager) void {
diff --git a/src/linux_c.zig b/src/linux_c.zig
index b652a6490..8f77db8c7 100644
--- a/src/linux_c.zig
+++ b/src/linux_c.zig
@@ -368,7 +368,7 @@ pub fn get_system_loadavg() [3]f64 {
pub fn get_version(name_buffer: *[std.os.HOST_NAME_MAX]u8) []const u8 {
const uts = std.os.uname();
- const result = std.mem.sliceTo(std.meta.assumeSentinel(&uts.version, 0), 0);
+ const result = bun.sliceTo(&uts.version, 0);
std.mem.copy(u8, name_buffer, result);
return name_buffer[0..result.len];
@@ -376,7 +376,7 @@ pub fn get_version(name_buffer: *[std.os.HOST_NAME_MAX]u8) []const u8 {
pub fn get_release(name_buffer: *[std.os.HOST_NAME_MAX]u8) []const u8 {
const uts = std.os.uname();
- const result = std.mem.sliceTo(std.meta.assumeSentinel(&uts.release, 0), 0);
+ const result = bun.sliceTo(&uts.release, 0);
std.mem.copy(u8, name_buffer, result);
return name_buffer[0..result.len];
diff --git a/src/string_types.zig b/src/string_types.zig
index e1e3dbf26..0378ffbe6 100644
--- a/src/string_types.zig
+++ b/src/string_types.zig
@@ -45,7 +45,7 @@ pub const PathString = packed struct {
pub inline fn sliceAssumeZ(this: anytype) stringZ {
@setRuntimeSafety(false); // "cast causes pointer to be null" is fine here. if it is null, the len will be 0.
- return @intToPtr([*:0]u8, @intCast(usize, this.ptr))[0..this.len];
+ return @intToPtr([*:0]u8, @intCast(usize, this.ptr))[0..this.len :0];
}
pub inline fn init(str: string) @This() {