commit 6b9827d26a7f9eb2de3972d72cf196b46ea90c81 Author: Martin Wickham Date: Thu Nov 26 15:46:03 2020 -0600 Initial Template diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..97386d9 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,16 @@ +# See https://git-scm.com/docs/gitattributes +# See https://help.github.com/articles/dealing-with-line-endings/ + +# Default behavior, if core.autocrlf is unset. +* text=auto + +# Files to be converted to native line endings on checkout. +*.cpp text +*.h text + +# Text files to always have CRLF (dos) line endings on checkout. +*.bat text eol=crlf + +# Text files to always have LF (unix) line endings on checkout. +*.sh text eol=lf +*.zig text eol=lf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..932a483 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +zig-cache/ +build_runner.zig diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..cf5a479 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,308 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "day 01", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day01.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 01", + }, + { + "name": "day 02", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day02.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 02", + }, + { + "name": "day 03", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day03.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 03", + }, + { + "name": "day 04", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day04.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 04", + }, + { + "name": "day 05", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day05.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 05", + }, + { + "name": "day 06", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day06.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 06", + }, + { + "name": "day 07", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day07.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 07", + }, + { + "name": "day 08", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day08.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 08", + }, + { + "name": "day 09", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day09.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 09", + }, + { + "name": "day 10", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day10.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 10", + }, + { + "name": "day 11", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day11.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 11", + }, + { + "name": "day 12", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day12.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 12", + }, + { + "name": "day 13", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day13.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 13", + }, + { + "name": "day 14", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day14.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 14", + }, + { + "name": "day 15", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day15.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 15", + }, + { + "name": "day 16", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day16.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 16", + }, + { + "name": "day 17", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day17.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 17", + }, + { + "name": "day 18", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day18.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 18", + }, + { + "name": "day 19", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day19.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 19", + }, + { + "name": "day 20", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day20.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 20", + }, + { + "name": "day 21", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day21.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 21", + }, + { + "name": "day 22", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day22.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 22", + }, + { + "name": "day 23", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day23.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 23", + }, + { + "name": "day 24", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day24.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 24", + }, + { + "name": "day 25", + "type": "cppvsdbg", + "request": "launch", + "program": "${workspaceFolder}/zig-cache/bin/day25.exe", + "args": [], + "stopAtEntry": false, + "cwd": "${workspaceFolder}", + "environment": [], + "externalConsole": false, + "preLaunchTask": "build day 25", + }, + ] +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..b729699 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,225 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "tasks": [ + { + "label": "build day 01", + "type": "shell", + "command": "zig", + "args": ["build", "install_day01"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 02", + "type": "shell", + "command": "zig", + "args": ["build", "install_day02"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 03", + "type": "shell", + "command": "zig", + "args": ["build", "install_day03"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 04", + "type": "shell", + "command": "zig", + "args": ["build", "install_day04"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 05", + "type": "shell", + "command": "zig", + "args": ["build", "install_day05"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 06", + "type": "shell", + "command": "zig", + "args": ["build", "install_day06"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 07", + "type": "shell", + "command": "zig", + "args": ["build", "install_day07"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 08", + "type": "shell", + "command": "zig", + "args": ["build", "install_day08"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 09", + "type": "shell", + "command": "zig", + "args": ["build", "install_day09"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 10", + "type": "shell", + "command": "zig", + "args": ["build", "install_day10"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 11", + "type": "shell", + "command": "zig", + "args": ["build", "install_day11"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 12", + "type": "shell", + "command": "zig", + "args": ["build", "install_day12"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 13", + "type": "shell", + "command": "zig", + "args": ["build", "install_day13"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 14", + "type": "shell", + "command": "zig", + "args": ["build", "install_day14"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 15", + "type": "shell", + "command": "zig", + "args": ["build", "install_day15"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 16", + "type": "shell", + "command": "zig", + "args": ["build", "install_day16"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 17", + "type": "shell", + "command": "zig", + "args": ["build", "install_day17"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 18", + "type": "shell", + "command": "zig", + "args": ["build", "install_day18"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 19", + "type": "shell", + "command": "zig", + "args": ["build", "install_day19"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 20", + "type": "shell", + "command": "zig", + "args": ["build", "install_day20"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 21", + "type": "shell", + "command": "zig", + "args": ["build", "install_day21"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 22", + "type": "shell", + "command": "zig", + "args": ["build", "install_day22"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 23", + "type": "shell", + "command": "zig", + "args": ["build", "install_day23"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 24", + "type": "shell", + "command": "zig", + "args": ["build", "install_day24"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "build day 25", + "type": "shell", + "command": "zig", + "args": ["build", "install_day25"], // add -Drelease-safe=true or -Drelease-fast=true to optimize + "problemMatcher": [], + "group": "build", + }, + { + "label": "test", + "type": "shell", + "command": "zig", + "args": ["build", "test"], + "problemMatcher": [], + "group": { + "kind": "test", + "isDefault": true + } + }, + { + "label": "format", + "type": "shell", + "command": "zig", + "args": ["fmt", "${file}"], + "problemMatcher": [], + }, + ] +} \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..2e0c783 --- /dev/null +++ b/LICENSE @@ -0,0 +1,24 @@ +Copyright (c) 2020 Martin Wickham +Dear Imgui is Copyright (c) 2014-2020 Omar Cornut +cimgui is Copyright (c) 2015 Stephan Dilly +cgltf is Copyright (c) 2018 Johannes Kuhlmann +ENet is Copyright (c) 2002-2020 Lee Salzman + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + diff --git a/README.md b/README.md new file mode 100644 index 0000000..aa5f964 --- /dev/null +++ b/README.md @@ -0,0 +1,11 @@ +# Advent Of Code Zig Template + +This repo provides a template for Advent of Code participants using Zig. It contains a main file for each day, a build.zig file set up with targets for each day, and Visual Studio Code files for debugging. + +### How to use this template: + +The src/ directory contains a main file for each day. Put your code there. The build command `zig build dayXX [target and mode options] -- [program args]` will build and run the specified day. You can also use `zig build install_dayXX [target and mode options]` to build the executable for a day and put it into `zig-cache/bin` without executing it. By default this template does not link libc, but you can set `should_link_libc` to `true` in build.zig to change that. If you have files with tests, add those files to the list of test files in build.zig. The command `zig build test` will run tests in all of these files. + +This repo also contains Visual Studio Code project files for debugging. These are meant to work with the C/C++ plugin. There is a debug configuration for each day. By default all days are built in debug mode, but this can be changed by editing `.vscode/tasks.json` if you have a need for speed. + +If you would like to contribute project files for other development environments, please send a PR. diff --git a/build.zig b/build.zig new file mode 100644 index 0000000..830fef8 --- /dev/null +++ b/build.zig @@ -0,0 +1,69 @@ +const std = @import("std"); +const Builder = std.build.Builder; +const LibExeObjStep = std.build.LibExeObjStep; + +// set this to true to link libc +const should_link_libc = false; + +const test_files = [_][]const u8 { + // list any zig files with tests here +}; + +fn linkObject(b: *Builder, obj: *LibExeObjStep) void { + if (should_link_libc) obj.linkLibC(); + + // Add linking for packages or third party libraries here +} + +pub fn build(b: *Builder) void { + // Standard target options allows the person running `zig build` to choose + // what target to build for. Here we do not override the defaults, which + // means any target is allowed, and the default is native. Other options + // for restricting supported target set are available. + const target = b.standardTargetOptions(.{}); + + // Standard release options allow the person running `zig build` to select + // between Debug, ReleaseSafe, ReleaseFast, and ReleaseSmall. + const mode = b.standardReleaseOptions(); + + // Set up an exe for each day + comptime var day = 1; + inline while (day <= 25) : (day += 1) { + @setEvalBranchQuota(100000); // this comptimePrint is pretty expensive + const dayString = comptime std.fmt.comptimePrint("day{:0>2}", .{ day }); + const zigFile = "src/" ++ dayString ++ ".zig"; + + + const exe = b.addExecutable(dayString, zigFile); + exe.setTarget(target); + exe.setBuildMode(mode); + linkObject(b, exe); + + exe.install(); + + const install_cmd = b.addInstallArtifact(exe); + + const install_step = b.step("install_" ++ dayString, "Install " ++ dayString ++ ".exe"); + install_step.dependOn(&install_cmd.step); + + const run_cmd = exe.run(); + run_cmd.step.dependOn(&install_cmd.step); + if (b.args) |args| { + run_cmd.addArgs(args); + } + + const run_step = b.step(dayString, "Run " ++ dayString); + run_step.dependOn(&run_cmd.step); + } + + // Set up a step to run all tests + const test_step = b.step("test", "Run all tests"); + for (test_files) |file| { + const test_cmd = b.addTest(file); + test_cmd.setTarget(target); + test_cmd.setBuildMode(mode); + linkObject(b, test_cmd); + + test_step.dependOn(&test_cmd.step); + } +} diff --git a/src/day01.zig b/src/day01.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day01.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day02.zig b/src/day02.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day02.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day03.zig b/src/day03.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day03.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day04.zig b/src/day04.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day04.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day05.zig b/src/day05.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day05.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day06.zig b/src/day06.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day06.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day07.zig b/src/day07.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day07.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day08.zig b/src/day08.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day08.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day09.zig b/src/day09.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day09.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day10.zig b/src/day10.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day10.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day11.zig b/src/day11.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day11.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day12.zig b/src/day12.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day12.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day13.zig b/src/day13.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day13.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day14.zig b/src/day14.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day14.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day15.zig b/src/day15.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day15.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day16.zig b/src/day16.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day16.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day17.zig b/src/day17.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day17.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day18.zig b/src/day18.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day18.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day19.zig b/src/day19.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day19.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day20.zig b/src/day20.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day20.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day21.zig b/src/day21.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day21.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day22.zig b/src/day22.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day22.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day23.zig b/src/day23.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day23.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day24.zig b/src/day24.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day24.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +} diff --git a/src/day25.zig b/src/day25.zig new file mode 100644 index 0000000..1f1d51c --- /dev/null +++ b/src/day25.zig @@ -0,0 +1,8 @@ +const std = @import("std"); +const Allocator = std.mem.Allocator; +const assert = std.debug.assert; +const print = std.debug.print; + +pub fn main() !void { + +}