wires

summary refs log tree commit diff
diff options
context:
space:
mode:
authorwires <wires@noreply.wires.systems>2025-10-13 12:08:59 -0400
committerwires <wires@noreply.wires.systems>2025-10-13 12:08:59 -0400
commit721265ff3da773740233a793b40b16de6210f701 (patch)
tree39cd10350e193a92c390a9a9a9a174a151264eb9
parentfirst console driver abstraction (diff)
downloadzosimos-721265ff3da773740233a793b40b16de6210f701.tar.gz
remove need for branch in console
-rw-r--r--src/console.zig14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/console.zig b/src/console.zig
index 1a7539e..dc715da 100644
--- a/src/console.zig
+++ b/src/console.zig
@@ -6,16 +6,22 @@ pub const Console = struct {
     write: *const fn (*const @This(), []const u8) void,
 };
 
-var cur: ?*const Console = null;
+fn nop_setup(_: *const Console) void {}
+fn nop_write(_: *const Console, _: []const u8) void {}
+
+const nop_console = Console{
+    .setup = nop_setup,
+    .write = nop_write,
+};
+
+var cur: *const Console = &nop_console;
 
 fn drain(
     _: *Writer,
     data: []const []const u8,
     _: usize,
 ) Writer.Error!usize {
-    if (cur) |c| {
-        c.write(c, data[0]);
-    }
+    cur.write(cur, data[0]);
     return data[0].len;
 }