aboutsummaryrefslogtreecommitdiff
path: root/src/channel.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/channel.zig')
-rw-r--r--src/channel.zig5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/channel.zig b/src/channel.zig
index 7687afa..6367463 100644
--- a/src/channel.zig
+++ b/src/channel.zig
@@ -13,6 +13,7 @@ pub const Error = error{
pub const Message = struct {
bytes: []const u8,
refcount: usize = 1,
+ process_filter: u16,
fn addReference(self: *Message) !void {
self.refcount = try std.math.add(usize, self.refcount, 1);
@@ -55,11 +56,11 @@ pub fn leave(pid: usize, id: usize) void {
}
// The channel takes ownership of `bytes`.
-pub fn pass(id: usize, bytes: []const u8) !void {
+pub fn pass(id: usize, receiver: u16, bytes: []const u8) !void {
const message = try alloc.create(Message);
defer message.dropReference();
- message.* = .{ .bytes = bytes };
+ message.* = .{ .bytes = bytes, .process_filter = receiver };
var it = joined.iterator();
while (it.next()) |queues| {