pub fn printFloat(w: *Writer, value: anytype, options: std.fmt.Number) Error!void WriteFailedSee the Writer implementation for detailed diagnostics.
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730pub fn printFloat(w: *Writer, value: anytype, options: std.fmt.Number) Error!void {
const mode: std.fmt.float.Mode = switch (options.mode) {
.decimal => .decimal,
.scientific => .scientific,
.binary, .octal, .hex => unreachable,
};
var buf: [std.fmt.float.bufferSize(.decimal, f64)]u8 = undefined;
const s = std.fmt.float.render(&buf, value, .{
.mode = mode,
.precision = options.precision,
}) catch |err| switch (err) {
error.BufferTooSmall => "(float)",
};
return w.alignBuffer(s, options.width orelse s.len, options.alignment, options.fill);
}
Uses a larger stack buffer; asserts mode is decimal or scientific.