mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 20:11:17 +00:00
enforce buff channel size > 0 (#2952)
* fix(stdlib): enforce BufferedChannel size > 0 and add regression test * chore(repo): ignore cmake/test artifacts * Formatting --------- Co-authored-by: Christoffer Lerno <christoffer.lerno@gmail.com>
This commit is contained in:
committed by
GitHub
parent
143fa70f87
commit
9fbf6bc213
@@ -21,6 +21,9 @@ struct BufferedChannelImpl @private
|
||||
Type[*] buf;
|
||||
}
|
||||
|
||||
<*
|
||||
@require size > 0: "channel size must be > 0"
|
||||
*>
|
||||
fn void? BufferedChannel.init(&self, Allocator allocator, usz size = 1)
|
||||
{
|
||||
BufferedChannelImpl* channel = allocator::new_with_padding(allocator, BufferedChannelImpl, Type.sizeof * size)!;
|
||||
@@ -155,4 +158,3 @@ fn void? BufferedChannel.close(self) @maydiscard // Remove optional in 0.8.0
|
||||
channel.mu.unlock();
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user