Deluan efe9291db0 refactor: multiple syntax updates for Go 1.26
Signed-off-by: Deluan <deluan@navidrome.org>
2026-05-19 18:02:36 -03:00

33 lines
476 B
Go

package chrono
import (
"time"
)
// Meter is a simple stopwatch
type Meter struct {
elapsed time.Duration
mark *time.Time
}
func (m *Meter) Start() {
m.mark = new(time.Now())
}
func (m *Meter) Stop() time.Duration {
if m.mark == nil {
return m.elapsed
}
m.elapsed += time.Since(*m.mark)
m.mark = nil
return m.elapsed
}
func (m *Meter) Elapsed() time.Duration {
elapsed := m.elapsed
if m.mark != nil {
elapsed += time.Since(*m.mark)
}
return elapsed
}