Files
aoc-2022/app/Main.hs
2023-09-18 08:07:05 +02:00

37 lines
716 B
Haskell

{-# LANGUAGE LambdaCase #-}
module Main where
import Lib
import System.Environment (getArgs)
paths :: [FilePath]
paths =
[ "./data/01.in"
, "./data/02.in"
, "./data/03.in"
, "./data/04.in"
, "./data/05.in"
, "./data/06.in"
, "./data/07.in"
, "./data/08.in"
, "./data/09.in"
]
solutions :: [(Int, Day, FilePath)]
solutions = zip3 [1 ..] (map head days) paths
runAll :: [(Int, Day, FilePath)] -> IO ()
runAll = mapM_ (\(dayNum, day, path) -> run day path >>= printDR dayNum)
usage :: IO ()
usage = putStrLn "./Main"
main :: IO ()
main =
printHeader
>> getArgs
>>= \case
["all"] -> runAll solutions
_ -> runAll [last solutions]