aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/std/buffer.zig12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/std/buffer.zig b/lib/std/buffer.zig
index 077b2b615f..f808af1485 100644
--- a/lib/std/buffer.zig
+++ b/lib/std/buffer.zig
@@ -147,6 +147,10 @@ pub const Buffer = struct {
try self.resize(m.len);
mem.copy(u8, self.list.toSlice(), m);
}
+
+ pub fn print(self: *Buffer, comptime fmt: []const u8, args: var) !void {
+ return std.fmt.format(self, error{OutOfMemory}, Buffer.append, fmt, args);
+ }
};
test "simple Buffer" {
@@ -190,3 +194,11 @@ test "Buffer.initCapacity" {
testing.expect(buf.capacity() == old_cap);
testing.expect(mem.eql(u8, buf.toSliceConst(), "hello"));
}
+
+test "Buffer.print" {
+ var buf = try Buffer.init(testing.allocator, "");
+ defer buf.deinit();
+
+ try buf.print("Hello {} the {}", .{ 2, "world" });
+ testing.expect(buf.eql("Hello 2 the world"));
+}