From 96d397d8e184606315ef0e08273cea4f3fcd3f5d Mon Sep 17 00:00:00 2001 From: Tomasz Chojnacki Date: Fri, 27 Jan 2023 16:19:57 +0100 Subject: Solve day 1 of 2020 in Gleam --- aoc-2020-gleam/src/ext/intx.gleam | 8 ++++++++ aoc-2020-gleam/src/ext/resultx.gleam | 4 ++++ aoc-2020-gleam/src/ext/stringx.gleam | 5 +++++ 3 files changed, 17 insertions(+) create mode 100644 aoc-2020-gleam/src/ext/intx.gleam create mode 100644 aoc-2020-gleam/src/ext/resultx.gleam create mode 100644 aoc-2020-gleam/src/ext/stringx.gleam (limited to 'aoc-2020-gleam/src/ext') diff --git a/aoc-2020-gleam/src/ext/intx.gleam b/aoc-2020-gleam/src/ext/intx.gleam new file mode 100644 index 0000000..3cfe144 --- /dev/null +++ b/aoc-2020-gleam/src/ext/intx.gleam @@ -0,0 +1,8 @@ +import gleam/int +import ext/resultx + +pub fn force_parse(string: String) -> Int { + string + |> int.parse() + |> resultx.force_unwrap() +} diff --git a/aoc-2020-gleam/src/ext/resultx.gleam b/aoc-2020-gleam/src/ext/resultx.gleam new file mode 100644 index 0000000..1748d77 --- /dev/null +++ b/aoc-2020-gleam/src/ext/resultx.gleam @@ -0,0 +1,4 @@ +pub fn force_unwrap(result: Result(t, _)) -> t { + assert Ok(value) = result + value +} diff --git a/aoc-2020-gleam/src/ext/stringx.gleam b/aoc-2020-gleam/src/ext/stringx.gleam new file mode 100644 index 0000000..6096465 --- /dev/null +++ b/aoc-2020-gleam/src/ext/stringx.gleam @@ -0,0 +1,5 @@ +import gleam/string + +pub fn is_not_empty(str: String) -> Bool { + !string.is_empty(str) +} -- cgit v1.2.3