fn init(self: *SelfChannel, buffer: []T) void
Call deinit to free resources when done. buffer must live until deinit is called. For a zero length buffer, use [0]T{}. TODO https://github.com/ziglang/zig/issues/2765
deinit
buffer
[0]T{}
self: *SelfChannel,
buffer: []T,