From ddf2de739068b5ff0866ccb1d067f3cb53a4fc55 Mon Sep 17 00:00:00 2001 From: David Czihak Date: Thu, 7 May 2026 14:33:19 +0200 Subject: Initial commit --- examples/hello-zig/src/main.zig | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 examples/hello-zig/src/main.zig (limited to 'examples/hello-zig/src/main.zig') diff --git a/examples/hello-zig/src/main.zig b/examples/hello-zig/src/main.zig new file mode 100644 index 0000000..74eb590 --- /dev/null +++ b/examples/hello-zig/src/main.zig @@ -0,0 +1,32 @@ +const std = @import("std"); +const hello_zig = @import("hello_zig"); + +pub fn main() !void { + var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator); + defer arena.deinit(); + + const allocator = arena.allocator(); + const args = try std.process.argsAlloc(allocator); + const name = if (args.len > 1) args[1] else "Nova"; + + var greeter = hello_zig.Greeter{ + .name = name, + .punctuation = '!', + }; + + const stdout = std.fs.File.stdout().deprecatedWriter(); + try greeter.write(stdout, .verbose); + + const sample_values = [_]i32{ -3, -2, 0, 1, 2, 3, 4 }; + var squares = try hello_zig.collectEvenSquares(allocator, &sample_values); + defer squares.deinit(allocator); + + std.debug.print("even squares: {any}\n", .{squares.items}); +} + +test "main module can compute a summary" { + const greeting = try hello_zig.describeNumber(std.testing.allocator, 42); + defer std.testing.allocator.free(greeting); + + try std.testing.expect(std.mem.startsWith(u8, greeting, "positive")); +} -- cgit v1.3