diff --git a/year25/day1.go b/year25/day1.go index c800362..f824901 100644 --- a/year25/day1.go +++ b/year25/day1.go @@ -5,11 +5,10 @@ import ( "fmt" "io" "iter" - "log" "strconv" ) -func Day1Part1(r io.Reader, l *log.Logger) (any, error) { +func Day1Part1(r io.Reader, l Logger) (any, error) { dial := 50 solution := 0 for pair := range day1GetPairs(r) { @@ -27,7 +26,7 @@ func Day1Part1(r io.Reader, l *log.Logger) (any, error) { return solution, nil } -func Day1Part2Slow(r io.Reader, l *log.Logger) (any, error) { +func Day1Part2Slow(r io.Reader, l Logger) (any, error) { dial := 50 solution := 0 for pair := range day1GetPairs(r) { @@ -45,7 +44,7 @@ func Day1Part2Slow(r io.Reader, l *log.Logger) (any, error) { return solution, nil } -func Day1Part2Fast(r io.Reader, l *log.Logger) (any, error) { +func Day1Part2Fast(r io.Reader, l Logger) (any, error) { dial := 50 solution := 0 for pair := range day1GetPairs(r) { diff --git a/year25/day2.go b/year25/day2.go index e226e4b..ce3d4dc 100644 --- a/year25/day2.go +++ b/year25/day2.go @@ -5,7 +5,6 @@ import ( "bytes" "fmt" "io" - "log" "strconv" "strings" @@ -51,7 +50,7 @@ func (s *day2Scanner) Bounds() (int, int) { return s.a, s.b } -func Day2Part1Simple(r io.Reader, l *log.Logger) (any, error) { +func Day2Part1Simple(r io.Reader, l Logger) (any, error) { input, err := aocutils.ReadString(r) if err != nil { return nil, fmt.Errorf("failed to read input: %s", err) @@ -95,7 +94,7 @@ func Day2Part1Simple(r io.Reader, l *log.Logger) (any, error) { return sum, nil } -func Day2Part2Simple(r io.Reader, l *log.Logger) (any, error) { +func Day2Part2Simple(r io.Reader, l Logger) (any, error) { input, err := aocutils.ReadString(r) if err != nil { return nil, fmt.Errorf("failed to read input: %s", err) @@ -155,7 +154,7 @@ func Day2Part2Simple(r io.Reader, l *log.Logger) (any, error) { return sum, nil } -func Day2Part1(r io.Reader, logger *log.Logger) (any, error) { +func Day2Part1(r io.Reader, logger Logger) (any, error) { inputScanner := bufio.NewScanner(r) inputScanner.Split(aocutils.SplitComma) scanner := &day2Scanner{scanner: inputScanner, sep: '-'} @@ -182,7 +181,7 @@ func Day2Part1(r io.Reader, logger *log.Logger) (any, error) { return sum, scanner.Err() } -func Day2Part2(r io.Reader, logger *log.Logger) (any, error) { +func Day2Part2(r io.Reader, logger Logger) (any, error) { inputScanner := bufio.NewScanner(r) inputScanner.Split(aocutils.SplitComma) diff --git a/year25/day3.go b/year25/day3.go index 07d8519..8462e6e 100644 --- a/year25/day3.go +++ b/year25/day3.go @@ -4,17 +4,16 @@ import ( "bufio" "fmt" "io" - "log" "strings" ) -func Day3Part1(r io.Reader, l *log.Logger) (any, error) { +func Day3Part1(r io.Reader, l Logger) (any, error) { return Day3(r, l, 2) } -func Day3Part2(r io.Reader, l *log.Logger) (any, error) { +func Day3Part2(r io.Reader, l Logger) (any, error) { return Day3(r, l, 12) } -func Day3(r io.Reader, logger *log.Logger, size int) (int64, error) { +func Day3(r io.Reader, logger Logger, size int) (int64, error) { scanner := bufio.NewScanner(r) scanner.Split(bufio.ScanLines) var sum int64 diff --git a/year25/utils.go b/year25/utils.go new file mode 100644 index 0000000..a4ad4ec --- /dev/null +++ b/year25/utils.go @@ -0,0 +1,6 @@ +package year25 + +type Logger interface { + Printf(string, ...interface{}) + Println(...interface{}) +}