document bufPrint, and format now uses writer not output

This commit is contained in:
Dominic Tarr 2022-05-23 20:58:13 +12:00 committed by GitHub
parent 64de32b341
commit 8171972cbb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -24,9 +24,9 @@ pub const FormatOptions = struct {
fill: u8 = ' ', fill: u8 = ' ',
}; };
/// Renders fmt string with args, calling output with slices of bytes. /// Renders fmt string with args, calling `writer` with slices of bytes.
/// If `output` returns an error, the error is returned from `format` and /// If `writer` returns an error, the error is returned from `format` and
/// `output` is not called again. /// `writer` is not called again.
/// ///
/// The format string must be comptime known and may contain placeholders following /// The format string must be comptime known and may contain placeholders following
/// this format: /// this format:
@ -1869,6 +1869,9 @@ pub const BufPrintError = error{
/// As much as possible was written to the buffer, but it was too small to fit all the printed bytes. /// As much as possible was written to the buffer, but it was too small to fit all the printed bytes.
NoSpaceLeft, NoSpaceLeft,
}; };
/// print a Formatter string into `buf`. Actually just a thin wrapper around `format` and `fixedBufferStream`.
/// returns a slice of the bytes printed to.
pub fn bufPrint(buf: []u8, comptime fmt: []const u8, args: anytype) BufPrintError![]u8 { pub fn bufPrint(buf: []u8, comptime fmt: []const u8, args: anytype) BufPrintError![]u8 {
var fbs = std.io.fixedBufferStream(buf); var fbs = std.io.fixedBufferStream(buf);
try format(fbs.writer(), fmt, args); try format(fbs.writer(), fmt, args);