aboutsummaryrefslogtreecommitdiff
path: root/aoc-2020-gleam/src/days
diff options
context:
space:
mode:
authorTomasz Chojnacki <tomaszchojnacki2001@gmail.com>2023-02-21 22:14:11 +0100
committerTomasz Chojnacki <tomaszchojnacki2001@gmail.com>2023-02-21 22:14:11 +0100
commit6eaf758850feebd8cfc97c3ead2de2625465a326 (patch)
treec77a254f832fbfc2299cf74133891df69d8f0397 /aoc-2020-gleam/src/days
parent16509ecd4f31ef421a464a98c8e0ea73bb5cb111 (diff)
downloadgleam_aoc2020-6eaf758850feebd8cfc97c3ead2de2625465a326.tar.gz
gleam_aoc2020-6eaf758850feebd8cfc97c3ead2de2625465a326.zip
Minor refactorings
Diffstat (limited to 'aoc-2020-gleam/src/days')
-rw-r--r--aoc-2020-gleam/src/days/day01.gleam2
-rw-r--r--aoc-2020-gleam/src/days/day04.gleam7
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
},
)