summaryrefslogtreecommitdiff
path: root/src/libzisp/value/sstr.zig
diff options
context:
space:
mode:
authorTaylan Kammer <taylan.kammer@gmail.com>2025-02-25 21:34:51 +0100
committerTaylan Kammer <taylan.kammer@gmail.com>2025-02-25 21:34:51 +0100
commitd08f735e8c8ca108a065d787a92f17b28f0409af (patch)
tree2d3e06d585265c50b6d5968b1636a6dc185ebd2c /src/libzisp/value/sstr.zig
parentca8de6eb6bd0fe1ee3ef22c659cf416d41bc7a2f (diff)
update
Diffstat (limited to 'src/libzisp/value/sstr.zig')
-rw-r--r--src/libzisp/value/sstr.zig15
1 files changed, 3 insertions, 12 deletions
diff --git a/src/libzisp/value/sstr.zig b/src/libzisp/value/sstr.zig
index a2f6bf8..1c9812e 100644
--- a/src/libzisp/value/sstr.zig
+++ b/src/libzisp/value/sstr.zig
@@ -62,22 +62,13 @@ fn _pack(s: []const u8, tag: OtherTag) Value {
return v;
}
-pub fn unpack(v: Value) struct { [6]u8, u3 } {
+pub fn unpack(v: Value) ShortString {
assert(v);
const s: [6]u8 = @bitCast(v.sstr.string);
inline for (0..6) |i| {
- if (s[i] == 0) return .{ s, i };
+ if (s[i] == 0) return .{ .buffer = s, .len = i };
}
- return .{ s, 6 };
-}
-
-pub fn unpack1(v: Value) struct { [6]u8, u3 } {
- assert(v);
- const s: [6]u8 = @bitCast(v.sstr.string);
- for (0..6) |i| {
- if (s[i] == 0) return .{ s, @intCast(i) };
- }
- return .{ s, 6 };
+ return .{ .buffer = s, .len = 6 };
}
// No Zisp API for sstr specifically, since it's a string. See string.zig.