From d5d5f7f06397d73f497d352f2f38b1a53d932b0d Mon Sep 17 00:00:00 2001 From: Uko Kokņevičs Date: Mon, 19 Feb 2024 23:38:33 +0200 Subject: Big update to modern zig --- src/Row.zig | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'src/Row.zig') diff --git a/src/Row.zig b/src/Row.zig index d1de2aa..b8e1674 100644 --- a/src/Row.zig +++ b/src/Row.zig @@ -51,7 +51,7 @@ pub fn appendString(self: *Row, buf: *Buffer, str: []const u8) !void { pub fn cleanWhiteSpace(self: *Row, buf: *Buffer) !void { const orig_len = self.data.items.len; while (self.data.items.len > 0) { - if (std.ascii.isBlank(self.data.items[self.data.items.len - 1])) { + if (std.ascii.isWhitespace(self.data.items[self.data.items.len - 1])) { _ = self.data.pop(); } else { break; @@ -86,7 +86,7 @@ pub fn deleteChar(self: *Row, buf: *Buffer, at: usize) !void { pub fn indentationSize(self: Row) usize { var idx: usize = 0; while (idx < self.data.items.len) : (idx += 1) { - if (!std.ascii.isBlank(self.data.items[idx])) { + if (!std.ascii.isWhitespace(self.data.items[idx])) { break; } } @@ -105,7 +105,7 @@ pub fn rxToCx(self: Row, config: Config, rx: usize) usize { } var cur_rx: usize = 0; - for (self.data.items) |char, cx| { + for (self.data.items, 0..) |char, cx| { if (char == '\t') { cur_rx += config.tab_stop - (cur_rx % config.tab_stop); } else { @@ -139,7 +139,7 @@ pub fn update(self: *Row, buf: *Buffer) !void { const UpdateSyntaxError = std.mem.Allocator.Error; pub fn updateSyntax(self: *Row, buf: *Buffer) UpdateSyntaxError!void { try self.hldata.resize(self.rdata.items.len); - std.mem.set(Highlight, self.hldata.items, .normal); + @memset(self.hldata.items, .normal); if (buf.syntax == null) { return; } @@ -158,7 +158,7 @@ pub fn updateSyntax(self: *Row, buf: *Buffer) UpdateSyntaxError!void { std.debug.assert(scs.len != 0); if (curr_str_quote == null and !in_comment and scs.len + i <= self.rdata.items.len) { if (std.mem.eql(u8, scs, self.rdata.items[i..(i + scs.len)])) { - std.mem.set(Highlight, self.hldata.items[i..], .comment); + @memset(self.hldata.items[i..], .comment); break :main_loop; } } @@ -172,7 +172,7 @@ pub fn updateSyntax(self: *Row, buf: *Buffer) UpdateSyntaxError!void { if (in_comment) { self.hldata.items[i] = .comment_ml; if (mce.len + i <= self.rdata.items.len and std.mem.eql(u8, mce, self.rdata.items[i..(i + mce.len)])) { - std.mem.set(Highlight, self.hldata.items[i..(i + mce.len)], .comment_ml); + @memset(self.hldata.items[i..(i + mce.len)], .comment_ml); i += mce.len; in_comment = false; last_sep = i; @@ -181,7 +181,7 @@ pub fn updateSyntax(self: *Row, buf: *Buffer) UpdateSyntaxError!void { continue :main_loop; } } else if (mcs.len + i <= self.rdata.items.len and std.mem.eql(u8, mcs, self.rdata.items[i..(i + mcs.len)])) { - std.mem.set(Highlight, self.hldata.items[i..(i + mcs.len)], .comment_ml); + @memset(self.hldata.items[i..(i + mcs.len)], .comment_ml); i += mcs.len; in_comment = true; continue :main_loop; @@ -218,9 +218,7 @@ pub fn updateSyntax(self: *Row, buf: *Buffer) UpdateSyntaxError!void { } if (syntax.flags.hl_numbers) { - if ((std.ascii.isDigit(c) and (last_sep == i or prev_hl == .number)) - or (c == '.' and prev_hl == .number) - ) { + if ((std.ascii.isDigit(c) and (last_sep == i or prev_hl == .number)) or (c == '.' and prev_hl == .number)) { self.hldata.items[i] = .number; i += 1; continue :main_loop; @@ -230,7 +228,7 @@ pub fn updateSyntax(self: *Row, buf: *Buffer) UpdateSyntaxError!void { if (syntax.isSeparator(c)) { const id = self.rdata.items[last_sep..i]; if (syntax.keyword_classifier(id)) |hl| { - std.mem.set(Highlight, self.hldata.items[last_sep..i], hl); + @memset(self.hldata.items[last_sep..i], hl); } last_sep = i + 1; @@ -242,7 +240,7 @@ pub fn updateSyntax(self: *Row, buf: *Buffer) UpdateSyntaxError!void { if (!in_comment) { const id = self.rdata.items[last_sep..self.rdata.items.len]; if (syntax.keyword_classifier(id)) |hl| { - std.mem.set(Highlight, self.hldata.items[last_sep..self.rdata.items.len], hl); + @memset(self.hldata.items[last_sep..self.rdata.items.len], hl); } } -- cgit v1.2.3