View Source EsbFireplace - Elixir
The FIREPLACEv1.0 allows the use of the esb
tooling for solving Advent of Code problems.
This is an implementation of FIREPLACEv1.0 for elixir.
Check esb for more information.
Installation
The package can be installed by adding esb_fireplace
to your list of dependencies in mix.exs
:
def deps do
[
{:esb_fireplace, "~> 0.1.0"}
]
end
Usage
Create a function named start
in your solution file and add EsbFireplace.v1_run
to it.
defmodule Year2023Day01 do
import EsbFireplace
def solve_pt1(input_data, _args) do
# Solve pt1
:hello
end
def solve_pt2(input_data, _args) do
# Solve pt2
:world
end
def start do
# 🎅🎄❄️☃️🎁🦌
# Bright christmas lights HERE
v1_run(&solve_pt1/2, &solve_pt2/2)
end
end
Running can be done with mix
, but this library is meant to be used with esb.
# You can do this...
mix run -e Year2023Day01.start -- --part 1 < input_data.txt
# But instead do this:
esb run --year 2023 --day 1 --part 1
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/esb_fireplace.
License
ESB - Script your way to rescue Christmas as part of the ElfScript Brigade team. Copyright (C) 2024 Luiz Eduardo Amaral luizamaral306@gmail.com
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.