authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-09-18 17:47:57-07:00
committergravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-09-18 17:47:57-07:00
logf22932b3707cf69e7f1f26d06f40d52807251aff
tree7d441013b77eb1f7971f40a27b55082a8d470ff0
parent3243df204ed02f0423884193885e5ad5621ba301
signature Signed by SSH key SHA256:4hHJbtBRU58AYXwjL7fkz2fnQHdiye8x1QpTCQ0sHNw

Base64Writer: add pad param to flush


1 files changed, 3 insertions(+), 4 deletions(-)

base64_writer.zig+3-4
...@@ -102,7 +102,7 @@ pub fn Base64Writer(comptime WriterType: type) type {...@@ -102,7 +102,7 @@ pub fn Base64Writer(comptime WriterType: type) type {
102 };102 };
103 }103 }
104104
105 pub fn flush(self: *Self) !void {105 pub fn flush(self: *Self, pad: enum { no_pad, yes_pad }) !void {
106 switch (self.buffer.len) {106 switch (self.buffer.len) {
107 else => unreachable,107 else => unreachable,
108 3 => unreachable,108 3 => unreachable,
...@@ -115,8 +115,8 @@ pub fn Base64Writer(comptime WriterType: type) type {...@@ -115,8 +115,8 @@ pub fn Base64Writer(comptime WriterType: type) type {
115 self.alphabet[p.n0],115 self.alphabet[p.n0],
116 self.alphabet[p.n1],116 self.alphabet[p.n1],
117 self.alphabet[p.n2],117 self.alphabet[p.n2],
118 '=',
119 });118 });
119 if (pad == .yes_pad) try self.writeAll("=");
120 self.buffer.len = 0;120 self.buffer.len = 0;
121 },121 },
122 1 => {122 1 => {
...@@ -127,9 +127,8 @@ pub fn Base64Writer(comptime WriterType: type) type {...@@ -127,9 +127,8 @@ pub fn Base64Writer(comptime WriterType: type) type {
127 try self.backing_writer.writeAll(&.{127 try self.backing_writer.writeAll(&.{
128 self.alphabet[p.n0],128 self.alphabet[p.n0],
129 self.alphabet[p.n1],129 self.alphabet[p.n1],
130 '=',
131 '=',
132 });130 });
131 if (pad == .yes_pad) try self.writeAll("==");
133 self.buffer.len = 0;132 self.buffer.len = 0;
134 },133 },
135 0 => {},134 0 => {},