✓
Passing This code compiles and runs correctly.
Code
// Test: Nested ~capture - outer capture's `captured` inside inner capture's continuation
~import "$std/io"
~import "$std/control"
const std = @import("std");
~event print_int { value: i32 }
~proc print_int {
std.debug.print("{d}\n", .{value});
}
// Outer capture wraps inner capture
// The outer's `captured { outer: ... }` is inside the inner's `| captured |>` continuation
// Note: nested captures require explicit unique bindings (outer/inner)
// The bindings must actually be used in captured { } blocks
~capture(expr: { outer: @as(i32, 0) })
| as outer |> capture(expr: { inner: @as(i32, 0) })
| as inner |> captured { inner: inner.inner + 42 }
| captured result |> captured { outer: outer.outer + result.inner }
| captured final |> print_int(value: final.outer)
Expected Output
42
Test Configuration
MUST_RUN