commit c4e3a49898fbfaf5fe890385656dac62ef3028fc (tree)
parent e69caaa39f06b7ddf00c1e439c3df91f4efbdef3
Author: Veikka Tuominen <git@vexu.eu>
Date: Mon, 13 Nov 2023 17:41:20 +0200
define an error set for `std.io.tty.Config.setColor`
Diffstat:
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/lib/std/io/tty.zig b/lib/std/io/tty.zig
@@ -70,7 +70,12 @@ pub const Config = union(enum) {
reset_attributes: u16,
};
- pub fn setColor(conf: Config, out_stream: anytype, color: Color) !void {
+ pub fn setColor(
+ conf: Config,
+ writer: anytype,
+ color: Color,
+ ) (@typeInfo(@TypeOf(writer.writeAll(""))).ErrorUnion.error_set ||
+ windows.SetConsoleTextAttributeError)!void {
nosuspend switch (conf) {
.no_color => return,
.escape_codes => {
@@ -95,7 +100,7 @@ pub const Config = union(enum) {
.dim => "\x1b[2m",
.reset => "\x1b[0m",
};
- try out_stream.writeAll(color_string);
+ try writer.writeAll(color_string);
},
.windows_api => |ctx| if (native_os == .windows) {
const attributes = switch (color) {