diff options
Diffstat (limited to 'src/exercises/exercise.go')
-rw-r--r-- | src/exercises/exercise.go | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/src/exercises/exercise.go b/src/exercises/exercise.go deleted file mode 100644 index 22700c8..0000000 --- a/src/exercises/exercise.go +++ /dev/null @@ -1,38 +0,0 @@ -package exercises - -import ( - "os" - "regexp" -) - -var notDoneRegex = regexp.MustCompile(`(?m)^\s*///?\s*I\s+AM\s+NOT\s+DONE`) - -type Exercise struct { - Name string - Path string - Mode string - Hint string -} - -func (e Exercise) State() State { - data, err := os.ReadFile(e.Path) - if err != nil { - return Pending - } - - if notDoneRegex.Match(data) { - return Pending - } - return Done -} - -type State int - -const ( - Pending State = iota + 1 - Done -) - -func (s State) String() string { - return [...]string{"Pending", "Done"}[s-1] -} |