aoc2025 @ 9296278e038ee98c69478902eb8ad2c19cc78086

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