From 8d855bcb636bcbcdbd4f2a5d80daa896ffe3660b Mon Sep 17 00:00:00 2001 From: Stefan Harmuth Date: Sat, 26 Dec 2020 11:12:16 +0100 Subject: [PATCH] cleaner, more readable way to initialize function map --- main.go | 47 +++++++++++++---------------------------------- 1 file changed, 13 insertions(+), 34 deletions(-) diff --git a/main.go b/main.go index 24a39e2..d75112f 100644 --- a/main.go +++ b/main.go @@ -28,40 +28,19 @@ var timeitNumber int var myDir, _ = filepath.Abs(filepath.Dir(os.Args[0])) func initDayFunctions() { - dayFunctions = make(map[int]map[int]func(puzzle tools.AoCPuzzle) interface{}, 25) - dayFunctions[1] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[1][1] = day01.Part1 - dayFunctions[1][2] = day01.Part2 - dayFunctions[2] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[2][1] = day02.Part1 - dayFunctions[2][2] = day02.Part2 - dayFunctions[3] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[3][1] = day03.Part1 - dayFunctions[3][2] = day03.Part2 - dayFunctions[4] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[4][1] = day04.Part1 - dayFunctions[4][2] = day04.Part2 - dayFunctions[5] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[5][1] = day05.Part1 - dayFunctions[5][2] = day05.Part2 - dayFunctions[6] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[6][1] = day06.Part1 - dayFunctions[6][2] = day06.Part2 - dayFunctions[7] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[7][1] = day07.Part1 - dayFunctions[7][2] = day07.Part2 - dayFunctions[8] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[8][1] = day08.Part1 - dayFunctions[8][2] = day08.Part2 - dayFunctions[9] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[9][1] = day09.Part1 - dayFunctions[9][2] = day09.Part2 - dayFunctions[10] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[10][1] = day10.Part1 - dayFunctions[10][2] = day10.Part2 - dayFunctions[11] = make(map[int]func(puzzle tools.AoCPuzzle) interface{}, 2) - dayFunctions[11][1] = day11.Part1 - dayFunctions[11][2] = day11.Part2 + dayFunctions = map[int]map[int]func(puzzle tools.AoCPuzzle) interface{}{ + 1: {1: day01.Part1, 2: day01.Part2}, + 2: {1: day02.Part1, 2: day02.Part2}, + 3: {1: day03.Part1, 2: day03.Part2}, + 4: {1: day04.Part1, 2: day04.Part2}, + 5: {1: day05.Part1, 2: day05.Part2}, + 6: {1: day06.Part1, 2: day06.Part2}, + 7: {1: day07.Part1, 2: day07.Part2}, + 8: {1: day08.Part1, 2: day08.Part2}, + 9: {1: day09.Part1, 2: day09.Part2}, + 10: {1: day10.Part1, 2: day10.Part2}, + 11: {1: day11.Part1, 2: day11.Part2}, + } } func execute(thisDay int) {