this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

format output

nnuuvv 139b6989 deb9e4ec

+33 -7
+33 -7
src/condition_overload.gleam
··· 1 1 import argv 2 2 import gleam/fetch 3 3 import gleam/http/request 4 + import gleam/int 4 5 import gleam/io 5 6 import gleam/javascript/promise 6 7 import gleam/list ··· 13 14 let assert Ok(search) = 14 15 argv.load().arguments 15 16 |> list.first() 16 - as "search has to be supploed as argument" 17 + as "search has to be supplied as argument" 17 18 let search = string.lowercase(search) 18 19 19 20 let _ = ··· 34 35 }) 35 36 }), 36 37 ) 37 - |> promise.map(fn(x) { io.print(string.inspect(x)) }) 38 + |> promise.map(result.map(_, fn(x) { io.println(format_row(x)) })) 39 + } 40 + 41 + fn format_row(row: Row) -> String { 42 + case row { 43 + Row(math_behavior: "Multiplying", ..) -> "very good" 44 + Row(math_behavior: "Adding", co_bonus_rel_base:, ..) -> { 45 + let co_bonus_rel_base = 46 + co_bonus_rel_base 47 + |> string.split_once("%") 48 + |> result.map(pair.first) 49 + |> result.try(int.parse) 50 + |> result.unwrap(0) 51 + 52 + case co_bonus_rel_base { 53 + bonus if bonus > 100 -> "good" 54 + bonus if bonus == 100 -> "normal" 55 + bonus if bonus < 100 -> "poor" 56 + _ -> panic as "unreachable(some secret fourth option)" 57 + } 58 + } 59 + 60 + Row(math_behavior: "N/A", ..) | Row(math_behavior: "", ..) -> "bad" 61 + 62 + _ -> "some secret third option" 63 + } 38 64 } 39 65 40 66 // do request and return Row if successful ··· 86 112 projectile: String, 87 113 base_damage: String, 88 114 co_bonus_at_100: String, 89 - co_bonos_rel_base: String, 115 + co_bonus_rel_base: String, 90 116 math_behavior: String, 91 117 notes: String, 92 118 ) ··· 164 190 let #(projectile, _, rest) = splitter.split(sep, rest) 165 191 let #(base_damage, _, rest) = splitter.split(sep, rest) 166 192 let #(co_bonus_at_100, _, rest) = splitter.split(sep, rest) 167 - let #(co_bonos_rel_base, _, rest) = splitter.split(sep, rest) 193 + let #(co_bonus_rel_base, _, rest) = splitter.split(sep, rest) 168 194 let #(math_behavior, _, rest) = splitter.split(sep, rest) 169 195 let #(notes, _, _) = splitter.split(sep, rest) 170 196 Row( ··· 173 199 projectile:, 174 200 base_damage:, 175 201 co_bonus_at_100:, 176 - co_bonos_rel_base:, 202 + co_bonus_rel_base:, 177 203 math_behavior:, 178 204 notes:, 179 205 ) ··· 196 222 let #(projectile, rest) = parse_value(rest) 197 223 let #(base_damage, rest) = parse_value(rest) 198 224 let #(co_bonus_at_100, rest) = parse_value(rest) 199 - let #(co_bonos_rel_base, rest) = parse_value(rest) 225 + let #(co_bonus_rel_base, rest) = parse_value(rest) 200 226 let #(math_behavior, rest) = parse_value(rest) 201 227 let #(notes, _) = parse_value(rest) 202 228 ··· 206 232 projectile:, 207 233 base_damage:, 208 234 co_bonus_at_100:, 209 - co_bonos_rel_base:, 235 + co_bonus_rel_base:, 210 236 math_behavior:, 211 237 notes:, 212 238 )