Advent of Code solutions
0
fork

Configure Feed

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

at db70ca7fa220d0320b47036e7aa38273645acd18 44 lines 1.2 kB view raw
1use advent_core::{get_ydp_and_input, make_year, Selection, Year, DP, YDP}; 2use macros::global_runner; 3 4global_runner!(2024); 5 6fn run_ydp(ydp: YDP, input: Option<String>) { 7 let dp = ydp.to_dp(); 8 9 match ydp.year { 10 Selection::All => { 11 run_all_years(&dp, input); 12 } 13 Selection::Single(year) => { 14 run_year(year, dp, input.as_deref()); 15 } 16 } 17} 18 19fn main() { 20 let args = std::env::args().skip(1).collect::<Vec<_>>(); 21 22 let command = args.get(0); 23 24 match command { 25 Some(command) => match command.as_str() { 26 "new" => { 27 let year = args.get(1).expect("No year provided"); 28 make_year(year); 29 } 30 "solve" | "run" => { 31 let (ydp, input) = get_ydp_and_input(args[1..].to_vec()); 32 run_ydp(ydp, input); 33 } 34 _ => { 35 println!("Unknown command: {}", command); 36 println!("Available commands: new, solve"); 37 } 38 }, 39 None => { 40 println!("No command provided"); 41 println!("Available commands: new, solve"); 42 } 43 } 44}