diff --git a/src/ex/console.zig b/src/ex/console.zig index f057578..665a277 100644 --- a/src/ex/console.zig +++ b/src/ex/console.zig @@ -94,6 +94,19 @@ fn worker(_: ?*anyopaque) void { } } +pub fn write(buf: []const u8) void { + console_lock.acquire(); + + var it = console_list.iterator(); + + while (it.next()) : (it.advance()) { + const console: *Console = @fieldParentPtr("link", it.get()); + console.write(console.ctx, buf); + } + + console_lock.release(); +} + pub fn register(cons: *Console) void { // Drain all logs until now. _ = drain_from_on(0, cons); diff --git a/src/ex/root.zig b/src/ex/root.zig index 38a466e..a5327eb 100644 --- a/src/ex/root.zig +++ b/src/ex/root.zig @@ -12,4 +12,5 @@ pub const workqueue = struct { pub const console = struct { pub const register = p.console.register; + pub const write = p.console.write; };