Skip to content

Commit 831a4ca

Browse files
committed
perf: Remove unnecessary ArrayList
1 parent 900ea69 commit 831a4ca

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/color.zig

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,10 @@ const std = @import("std");
99

1010
const named_colors = @import("named_colors.zig");
1111

12-
const ArrayList = std.ArrayList;
1312
const ascii = std.ascii;
1413
const fmt = std.fmt;
1514
const BufPrintError = fmt.BufPrintError;
1615
const Case = fmt.Case;
17-
const heap = std.heap;
1816
const math = std.math;
1917
const mem = std.mem;
2018
const testing = std.testing;
@@ -401,12 +399,14 @@ pub fn Color(comptime T: type) type {
401399
const s = lower[(i + 1)..(lower.len - 1)];
402400
mem.replaceScalar(u8, s, ',', ' ');
403401
mem.replaceScalar(u8, s, '/', ' ');
404-
var params_list = try ArrayList([]const u8)
405-
.initCapacity(heap.page_allocator, 4);
406-
errdefer params_list.deinit();
407402
var iter = mem.tokenizeAny(u8, s, &ascii.whitespace);
408-
while (iter.next()) |param| try params_list.append(param);
409-
const params = try params_list.toOwnedSlice();
403+
var params_list = mem.zeroes([5][]const u8);
404+
var j: u3 = 0;
405+
while (iter.next()) |param| : (j += 1) {
406+
if (j >= params_list.len) break;
407+
params_list[j] = param;
408+
}
409+
const params = params_list[0..j];
410410
const params_len = params.len;
411411

412412
if (mem.eql(u8, fn_name, "rgb") or mem.eql(u8, fn_name, "rgba")) {

0 commit comments

Comments
 (0)