diff options
Diffstat (limited to 'aoc-2020-gleam/src/days')
-rw-r--r-- | aoc-2020-gleam/src/days/day01.gleam | 2 | ||||
-rw-r--r-- | aoc-2020-gleam/src/days/day04.gleam | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/aoc-2020-gleam/src/days/day01.gleam b/aoc-2020-gleam/src/days/day01.gleam index 6e75826..ac46581 100644 --- a/aoc-2020-gleam/src/days/day01.gleam +++ b/aoc-2020-gleam/src/days/day01.gleam @@ -10,7 +10,7 @@ fn solve(numbers: List(Int), n: Int) -> Int { |> list.combinations(by: n) |> list.find(one_that: fn(p) { int.sum(p) == 2020 }) |> result.map(with: int.product) - |> resultx.force_unwrap() + |> resultx.force_unwrap } fn part1(numbers: List(Int)) -> Int { diff --git a/aoc-2020-gleam/src/days/day04.gleam b/aoc-2020-gleam/src/days/day04.gleam index 53abb0c..fa165ae 100644 --- a/aoc-2020-gleam/src/days/day04.gleam +++ b/aoc-2020-gleam/src/days/day04.gleam @@ -109,8 +109,11 @@ fn is_valid2(passport: Passport) -> Bool { let #(key, parser) = validator passport.fields |> map.get(key) - |> resultx.force_unwrap - |> p.parse_entire(with: parser) + |> result.then(apply: fn(value) { + value + |> p.parse_entire(with: parser) + |> result.replace_error(Nil) + }) |> result.is_ok }, ) |