✓
Passing This code compiles and runs correctly.
Code
// Test 830: Namespace + Labels combination
//
// Real code uses BOTH namespaces AND labels together.
// Example: server.accept in a loop, file.read in a retry loop, etc.
//
// This tests the interaction between two major features.
const std = @import("std");
~event server.accept {}
| connection u32
| stopped
~event server.handle { id: u32 }
~proc server.accept|zig {
std.debug.print("Accept\n", .{});
// Simulate accepting 2 connections then stopping
const static = struct {
var count: u32 = 0;
};
static.count += 1;
if (static.count <= 2) {
return .{ .@"connection" = static.count };
}
return .{ .@"stopped" = .{} };
}
~proc server.handle|zig {
std.debug.print("Handle {}\n", .{id});
}
// Loop with namespaced events
~#loop server.accept()
| connection c |> server.handle(c) |> @loop()
| stopped |> _
Actual
Accept
Handle 1
Accept
Handle 2
Accept
Expected output
Accept
Handle 1
Accept
Handle 2
Accept
Test Configuration
MUST_RUN