aoc2025 @ abd28ba4a4eee1af0f95ed69f4322389923f6b45

 1const std = @import("std");
 2const day1 = @import("day1.zig");
 3const day2 = @import("day2.zig");
 4const day3 = @import("day3.zig");
 5
 6pub export fn main() void {
 7    for (1..std.os.argv.len) |i| {
 8        const day = std.mem.span(std.os.argv[i]);
 9
10        if (std.mem.eql(u8, "day1", day)) {
11            const input = @embedFile("./input/day1");
12            print(day1.pt1(input));
13            print(day1.pt2(input));
14        } else if (std.mem.eql(u8, "day2", day)) {
15            const input = @embedFile("./input/day2");
16            print(day2.pt1(input));
17            print(day2.pt2(input));
18        } else if (std.mem.eql(u8, "day3", day)) {
19            const input = @embedFile("./input/day3");
20            print(day3.pt1(input));
21            print(day3.pt2(input));
22        }
23    }
24}
25
26fn print(res: anytype) void {
27    const ArgsType = @TypeOf(res);
28    const res_type_info = @typeInfo(ArgsType);
29    if (res_type_info == .int) {
30        std.debug.print("{d}\n", .{res});
31    } else {
32        @compileError("print not implemented for this type");
33    }
34}