| ... | ... | @@ -49,12 +49,15 @@ pub fn Main(comptime T: type) type { |
| 49 | 49 | const r = req.reader(); |
| 50 | 50 | |
| 51 | 51 | var line_num: usize = 1; |
| 52 | | std.debug.print("\n", .{}); |
| 52 | // std.debug.print("\n", .{}); |
| 53 | 53 | |
| 54 | 54 | var arena = std.heap.ArenaAllocator.init(alloc); |
| 55 | 55 | defer arena.deinit(); |
| 56 | 56 | while (true) { |
| 57 | | const line = r.readUntilDelimiterAlloc(alloc, '\n', max_size) catch |e| if (e == error.EndOfStream) break else return e; |
| 57 | const line = r.readUntilDelimiterAlloc(alloc, '\n', max_size) catch |err| switch (err) { |
| 58 | error.EndOfStream => break, |
| 59 | else => |e| return e, |
| 60 | }; |
| 58 | 61 | defer alloc.free(line); |
| 59 | 62 | |
| 60 | 63 | if (line.len == 0) { |
| ... | ... | @@ -66,11 +69,12 @@ pub fn Main(comptime T: type) type { |
| 66 | 69 | |
| 67 | 70 | try T.exec(arena.allocator(), line, w); |
| 68 | 71 | |
| 69 | | std.debug.print("{s}", .{ansi.csi.CursorUp(1)}); |
| 72 | std.debug.print("{s}", .{ansi.csi.CursorHorzAbs(1)}); |
| 70 | 73 | std.debug.print("{s}", .{ansi.csi.EraseInLine(0)}); |
| 71 | | std.debug.print("{d}\n", .{line_num}); |
| 74 | std.debug.print("{d}", .{line_num}); |
| 72 | 75 | line_num += 1; |
| 73 | 76 | } |
| 77 | std.debug.print("\n", .{}); |
| 74 | 78 | try w.writeAll(T.dest_footer); |
| 75 | 79 | try bufw.flush(); |
| 76 | 80 | } |