✗
Failing This test is currently failing.
Failed: backend-exec
Error Details
install
Failure Output
Showing last 10 of 21 lines
error: the following command failed with 1 compilation errors:
/opt/homebrew/Cellar/zig/0.15.2_1/bin/zig build-exe -ODebug --dep parser --dep ast_serializer -Mroot=/Users/larsde/src/koru/tests/regression/200_COMPILER_FEATURES/210_PARSER/210_049_parser_runtime/output_emitted.zig -ODebug --dep ast --dep ast_mangle --dep lexer --dep errors --dep type_registry --dep expression_parser --dep annotation_parser --dep union_collector --dep module_resolver --dep file_types -Mparser=/Users/larsde/src/koru/src/parser.zig -ODebug --dep ast --dep parser --dep log -Mast_serializer=/Users/larsde/src/koru/src/ast_serializer.zig -ODebug --dep errors -Mast=/Users/larsde/src/koru/src/ast.zig -ODebug --dep ast -Mast_mangle=/Users/larsde/src/koru/src/ast_mangle.zig -ODebug -Mlexer=/Users/larsde/src/koru/src/lexer.zig -ODebug -Merrors=/Users/larsde/src/koru/src/errors.zig -ODebug --dep ast --dep log -Mtype_registry=/Users/larsde/src/koru/src/type_registry.zig -ODebug --dep lexer --dep ast -Mexpression_parser=/Users/larsde/src/koru/src/expression_parser.zig -ODebug -Mannotation_parser=/Users/larsde/src/koru/src/annotation_parser.zig -ODebug --dep ast -Munion_collector=/Users/larsde/src/koru/src/union_collector.zig -ODebug --dep config --dep log --dep file_types -Mmodule_resolver=/Users/larsde/src/koru/src/module_resolver.zig -ODebug -Mfile_types=/Users/larsde/src/koru/src/file_types.zig -ODebug -Mlog=/Users/larsde/src/koru/src/log.zig -ODebug --dep log -Mconfig=/Users/larsde/src/koru/src/config.zig -lc --cache-dir .zig-cache --global-cache-dir /Users/larsde/.cache/zig --name output --zig-lib-dir /opt/homebrew/Cellar/zig/0.15.2_1/lib/zig/ --listen=-
Build Summary: 0/3 steps succeeded; 1 failed
install transitive failure
+- install output transitive failure
+- compile exe output Debug native 1 errors
error: the following build command failed with exit code 1:
.zig-cache/o/0e86f9279b0126fff3a35d69102bff18/build /opt/homebrew/Cellar/zig/0.15.2_1/bin/zig /opt/homebrew/Cellar/zig/0.15.2_1/lib/zig /Users/larsde/src/koru/tests/regression/200_COMPILER_FEATURES/210_PARSER/210_049_parser_runtime .zig-cache /Users/larsde/.cache/zig --seed 0xa0b35691 -Z15084970d04974fb Code
// Test: Parser as runtime library
// Parses Koru source code and inspects the AST at runtime
// This proves the parser is fully usable as a library!
~import std/koru
const std = @import("std");
// Sample Koru code to parse
const SAMPLE_CODE =
\\~tor greet { name: string }
\\| greeted
\\
\\~proc greet {
\\ return .{ .greeted = .{} };
\\}
;
// Event to inspect AST - using module:Type syntax!
~tor inspect-ast { result: std/koru:ParseResult }
~proc inspect-ast|zig {
std.debug.print("Parsed {} items\n", .{result.source_file.items.len});
for (result.source_file.items) |item| {
switch (item) {
.event_decl => |event| {
std.debug.print("Found event: ", .{});
for (event.path.segments) |seg| {
std.debug.print("{s}", .{seg});
}
std.debug.print("\n", .{});
},
.proc_decl => |proc_decl| {
std.debug.print("Found proc: ", .{});
for (proc_decl.path.segments) |seg| {
std.debug.print("{s}", .{seg});
}
std.debug.print("\n", .{});
},
else => {},
}
}
}
// Event to report error - returns done when complete
~tor report-error { message: string }
~proc report-error|zig {
std.debug.print("Parse error: {s}\n", .{message});
}
// Modern Koru: proc = flow composition
~std/koru:parse.source(source: SAMPLE_CODE, file_name: "sample.kz", allocator: std.heap.page_allocator)
| parsed p |> inspect-ast(result: p)
| parse-error err |> report-error(message: err)
Flows
flow ~parse.source click a branch to expand · @labels scroll to their anchor
parse.source (source: SAMPLE_CODE, file_name: "sample.kz", allocator: std.heap.page_allocator)
Test Configuration
MUST_RUN