diff --git a/src/lib.zig b/src/lib.zig index d4c903df3db38f9f70511e0ad0df00ad6c9baaa8..b57721d845745a6e29538edc7ef5ab77f5a45b7d 100644 --- a/src/lib.zig +++ b/src/lib.zig @@ -22,3 +22,11 @@ pub fn reduceNumber(alloc: *std.mem.Allocator, input: u64, comptime unit: u64, c pub fn intToFloat(n: u64) f64 { return @intToFloat(f64, n); } + +pub fn addSentinel(alloc: *std.mem.Allocator, comptime T: type, input: []const T, comptime sentinel: T) ![:sentinel]const T { + var list = try std.ArrayList(T).initCapacity(alloc, input.len + 1); + try list.appendSlice(input); + try list.append(sentinel); + const str = list.toOwnedSlice(); + return str[0 .. str.len - 1 :sentinel]; +}