summaryrefslogtreecommitdiffhomepage
path: root/src/watch/watch.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/watch/watch.go')
-rw-r--r--src/watch/watch.go41
1 files changed, 0 insertions, 41 deletions
diff --git a/src/watch/watch.go b/src/watch/watch.go
deleted file mode 100644
index 84f9ed9..0000000
--- a/src/watch/watch.go
+++ /dev/null
@@ -1,41 +0,0 @@
-package watch
-
-import (
- "errors"
- "io/fs"
- "log"
- "os"
- "time"
-
- . "git.thomasvoss.com/euro-cash.eu/src/try"
-)
-
-func File(path string, f func()) {
- impl(path, os.Stat, f)
-}
-
-func FileFS(dir fs.FS, path string, f func()) {
- impl(path, func(path string) (os.FileInfo, error) {
- return fs.Stat(dir, path)
- }, f)
-}
-
-func impl(path string, statfn func(string) (os.FileInfo, error), f func()) {
- ostat := Try2(statfn(path))
-
- for {
- nstat, err := statfn(path)
- switch {
- case errors.Is(err, os.ErrNotExist):
- return
- case err != nil:
- log.Println(err)
- }
-
- if nstat.ModTime() != ostat.ModTime() {
- f()
- ostat = nstat
- }
- time.Sleep(1 * time.Second)
- }
-}