diff options
Diffstat (limited to 'src/exercises/list.go')
-rw-r--r-- | src/exercises/list.go | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/src/exercises/list.go b/src/exercises/list.go deleted file mode 100644 index c0c7261..0000000 --- a/src/exercises/list.go +++ /dev/null @@ -1,44 +0,0 @@ -package exercises - -import ( - "errors" - "os" - - "github.com/pelletier/go-toml/v2" -) - -var ErrExerciseNotFound = errors.New("exercise not found") - -type Info struct { - Exercises []Exercise -} - -func List() ([]Exercise, error) { - var info Info - - data, err := os.ReadFile("info.toml") - if err != nil { - return info.Exercises, err - } - - if err := toml.Unmarshal(data, &info); err != nil { - return info.Exercises, err - } - - return info.Exercises, nil -} - -func Find(exercise string) (Exercise, error) { - exs, err := List() - if err != nil { - return Exercise{}, err - } - - for _, ex := range exs { - if ex.Name == exercise { - return ex, nil - } - } - - return Exercise{}, ErrExerciseNotFound -} |