refactor: Improve error handling in solve and solve_part2 functions

This commit is contained in:
Ruidy (aider) 2024-12-01 18:04:57 +01:00
parent 85ebc05ead
commit c1fc39ac17
No known key found for this signature in database
GPG key ID: E00F51288CB857CC

View file

@ -29,10 +29,12 @@ defmodule AdventCode2024.Day1 do
def solve(input_file \\ "day1/input.txt") do def solve(input_file \\ "day1/input.txt") do
case File.read(input_file) do case File.read(input_file) do
{:ok, content} -> {:ok, content} ->
{left, right} = parse_input(content) case parse_input(content) do
result = calculate_total_distance(left, right) {:error, reason} -> {:error, reason}
{:ok, result} {left, right} ->
result = calculate_total_distance(left, right)
{:ok, result}
end
{:error, reason} -> {:error, reason} ->
{:error, reason} {:error, reason}
end end
@ -61,10 +63,12 @@ defmodule AdventCode2024.Day1 do
def solve_part2(input_file \\ "day1/input.txt") do def solve_part2(input_file \\ "day1/input.txt") do
case File.read(input_file) do case File.read(input_file) do
{:ok, content} -> {:ok, content} ->
{left, right} = parse_input(content) case parse_input(content) do
result = calculate_similarity_score(left, right) {:error, reason} -> {:error, reason}
{:ok, result} {left, right} ->
result = calculate_similarity_score(left, right)
{:ok, result}
end
{:error, reason} -> {:error, reason} ->
{:error, reason} {:error, reason}
end end