Function printFloat [src]

Uses a larger stack buffer; asserts mode is decimal or scientific.

Prototype

pub fn printFloat(w: *Writer, value: anytype, options: std.fmt.Number) Error!void

Parameters

w: *Writeroptions: std.fmt.Number

Possible Errors

WriteFailed

See the Writer implementation for detailed diagnostics.

Source

pub 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); }