use logger interface
This commit is contained in:
parent
906cc597cd
commit
2834ad59ee
@ -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) {
|
||||
|
||||
@ -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)
|
||||
|
||||
|
||||
@ -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
|
||||
|
||||
6
year25/utils.go
Normal file
6
year25/utils.go
Normal file
@ -0,0 +1,6 @@
|
||||
package year25
|
||||
|
||||
type Logger interface {
|
||||
Printf(string, ...interface{})
|
||||
Println(...interface{})
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user