From 095409eb0421f0f970c246b371b39dab2ff912aa Mon Sep 17 00:00:00 2001 From: Jimmi Holst Christensen Date: Tue, 22 Jul 2025 10:44:11 +0200 Subject: feat: Add `Diagnostic.reportToFile` The code for reporting errors became quite verbose after writegate. Reporting to stderr is very common, so this wrapper provides a default, buffered way to report to a file. --- example/streaming-clap.zig | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'example/streaming-clap.zig') diff --git a/example/streaming-clap.zig b/example/streaming-clap.zig index d60167c..4cd6962 100644 --- a/example/streaming-clap.zig +++ b/example/streaming-clap.zig @@ -34,10 +34,8 @@ pub fn main() !void { // Because we use a streaming parser, we have to consume each argument parsed individually. while (parser.next() catch |err| { // Report useful error and exit. - var buf: [1024]u8 = undefined; - var stderr = std.fs.File.stderr().writer(&buf); - try diag.report(&stderr.interface, err); - return stderr.interface.flush(); + try diag.reportToFile(.stderr(), err); + return err; }) |arg| { // arg.param will point to the parameter which matched the argument. switch (arg.param.id) { -- cgit v1.2.3