authorgravatar for squeek502@hotmail.comRyan Liptak <squeek502@hotmail.com> 2021-09-16 17:19:41-07:00
committergravatar for mail@isaacfreund.comIsaac Freund <mail@isaacfreund.com> 2021-09-19 13:52:56+02:00
logcfe71cb67a3cf3814ce12d2a2d87192ef905b9fd
tree01e972ae5c418eafad109884bf4ad2a177b31f39
parentd2b5105f54ac83fdd874df9408157773ae203798

std.fifo.LinearFifo: ensureUnusedCapacity and ensureTotalCapacity

Same as c8ae581fef6506a8234cdba1355ba7f0f449031a, but for LinearFifo.

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

lib/std/fifo.zig+6-3
...@@ -119,8 +119,11 @@ pub fn LinearFifo(...@@ -119,8 +119,11 @@ pub fn LinearFifo(
119 }119 }
120 }120 }
121121
122 /// Deprecated: call `ensureUnusedCapacity` or `ensureTotalCapacity`.
123 pub const ensureCapacity = ensureTotalCapacity;
124
122 /// Ensure that the buffer can fit at least `size` items125 /// Ensure that the buffer can fit at least `size` items
123 pub fn ensureCapacity(self: *Self, size: usize) !void {126 pub fn ensureTotalCapacity(self: *Self, size: usize) !void {
124 if (self.buf.len >= size) return;127 if (self.buf.len >= size) return;
125 if (buffer_type == .Dynamic) {128 if (buffer_type == .Dynamic) {
126 self.realign();129 self.realign();
...@@ -135,7 +138,7 @@ pub fn LinearFifo(...@@ -135,7 +138,7 @@ pub fn LinearFifo(
135 pub fn ensureUnusedCapacity(self: *Self, size: usize) error{OutOfMemory}!void {138 pub fn ensureUnusedCapacity(self: *Self, size: usize) error{OutOfMemory}!void {
136 if (self.writableLength() >= size) return;139 if (self.writableLength() >= size) return;
137140
138 return try self.ensureCapacity(math.add(usize, self.count, size) catch return error.OutOfMemory);141 return try self.ensureTotalCapacity(math.add(usize, self.count, size) catch return error.OutOfMemory);
139 }142 }
140143
141 /// Returns number of items currently in fifo144 /// Returns number of items currently in fifo
...@@ -471,7 +474,7 @@ test "LinearFifo(u8, .Dynamic)" {...@@ -471,7 +474,7 @@ test "LinearFifo(u8, .Dynamic)" {
471 }474 }
472475
473 {476 {
474 try fifo.ensureCapacity(1);477 try fifo.ensureTotalCapacity(1);
475 var in_fbs = std.io.fixedBufferStream("pump test");478 var in_fbs = std.io.fixedBufferStream("pump test");
476 var out_buf: [50]u8 = undefined;479 var out_buf: [50]u8 = undefined;
477 var out_fbs = std.io.fixedBufferStream(&out_buf);480 var out_fbs = std.io.fixedBufferStream(&out_buf);