| ... | @@ -1131,6 +1131,11 @@ pub fn bufPrint(buf: []u8, comptime fmt: []const u8, args: anytype) BufPrintErro | ... | @@ -1131,6 +1131,11 @@ pub fn bufPrint(buf: []u8, comptime fmt: []const u8, args: anytype) BufPrintErro |
| 1131 | return fbs.getWritten(); | 1131 | return fbs.getWritten(); |
| 1132 | } | 1132 | } |
| 1133 | | 1133 | |
| | 1134 | pub fn bufPrintZ(buf: []u8, comptime fmt: []const u8, args: anytype) BufPrintError![:0]u8 { |
| | 1135 | const result = try bufPrint(buf, fmt ++ "\x00", args); |
| | 1136 | return result[0 .. result.len - 1 :0]; |
| | 1137 | } |
| | 1138 | |
| 1134 | // Count the characters needed for format. Useful for preallocating memory | 1139 | // Count the characters needed for format. Useful for preallocating memory |
| 1135 | pub fn count(comptime fmt: []const u8, args: anytype) u64 { | 1140 | pub fn count(comptime fmt: []const u8, args: anytype) u64 { |
| 1136 | var counting_writer = std.io.countingWriter(std.io.null_writer); | 1141 | var counting_writer = std.io.countingWriter(std.io.null_writer); |
| ... | @@ -1151,7 +1156,10 @@ pub fn allocPrint(allocator: *mem.Allocator, comptime fmt: []const u8, args: any | ... | @@ -1151,7 +1156,10 @@ pub fn allocPrint(allocator: *mem.Allocator, comptime fmt: []const u8, args: any |
| 1151 | }; | 1156 | }; |
| 1152 | } | 1157 | } |
| 1153 | | 1158 | |
| 1154 | pub fn allocPrint0(allocator: *mem.Allocator, comptime fmt: []const u8, args: anytype) AllocPrintError![:0]u8 { | 1159 | /// Deprecated, use allocPrintZ |
| | 1160 | pub const allocPrint0 = allocPrintZ; |
| | 1161 | |
| | 1162 | pub fn allocPrintZ(allocator: *mem.Allocator, comptime fmt: []const u8, args: anytype) AllocPrintError![:0]u8 { |
| 1155 | const result = try allocPrint(allocator, fmt ++ "\x00", args); | 1163 | const result = try allocPrint(allocator, fmt ++ "\x00", args); |
| 1156 | return result[0 .. result.len - 1 :0]; | 1164 | return result[0 .. result.len - 1 :0]; |
| 1157 | } | 1165 | } |