✓
Passing This code compiles and runs correctly.
Code
// Test 310_025: Fully Qualified Pattern Matching
// Validates that qualified patterns match specific modules
// Tests: bare suffix wildcard (print* matches println)
const std = @import("std");
~import std/taps
~import std/io
// Local event to transition to (so tap can fire)
~event finish {}
~proc finish|zig {
std.debug.print("Local print\n", .{});
}
~event logger { source: []const u8 }
~proc logger|zig {
std.debug.print("Observed: {s}\n", .{source});
}
// Fully qualified - matches std/io:println via print* wildcard
// Using Profile metatype for string-based source field
~tap(std/io:print* -> *)
| Profile p |> logger(p.source)
// Flow: println (void) transitions to finish
// Tap fires because println matches print* and transitions to finish
~std/io:print.ln("From std.io") |> finish()
Actual
From std.io
Observed: std.io:print.ln
Local print
Expected output
From std.io
Observed: std.io:print.ln
Local print
Test Configuration
MUST_RUN