about summary refs log tree commit diff
path: root/Program.cs
diff options
context:
space:
mode:
authorBen Harris <ben@tilde.team>2019-12-02 22:10:05 -0500
committerBen Harris <ben@tilde.team>2019-12-02 22:10:05 -0500
commita67b0bfdbe851613c456a8e3ad66532ac45fef94 (patch)
treebd8fee73f407b4e89071cbfce8f1d52014b19a20 /Program.cs
parentc8fd30d2ec507e40feb785cefc91f08906afa093 (diff)
add DayFactory and cli options for day
Diffstat (limited to 'Program.cs')
-rw-r--r--Program.cs30
1 files changed, 23 insertions, 7 deletions
diff --git a/Program.cs b/Program.cs
index 62d0cb1..146196e 100644
--- a/Program.cs
+++ b/Program.cs
@@ -1,6 +1,4 @@
 using System;

-using System.IO;

-using System.Linq;

 

 namespace aoc2019

 {

@@ -8,11 +6,29 @@ namespace aoc2019
     {

         static void Main(string[] args)

         {

-            Day1.Part1();

-            Day1.Part2();

-

-            Day2.Part1();

-            Day2.Part2();

+            if (args.Length == 1 && int.TryParse(args[0], out int daynum))

+            {

+                if (daynum >= 0 && daynum <= 25)

+                {

+                    Day day = DayFactory.GetDay(daynum);

+                    day.AllParts();

+                }

+                else

+                {

+                    Console.WriteLine($"{daynum} is an invalid day");

+                    return;

+                }

+            }

+            else

+            {

+                for (var i = 1; i <= 25; ++i)

+                {

+                    var day = DayFactory.GetDay(i);

+                    if (day == null) continue;

+                    Console.WriteLine($"Day {i}:");

+                    day.AllParts();

+                }

+            }

         }

     }

 }