mirror of
https://github.com/taigrr/wtf
synced 2025-01-18 04:03:14 -08:00
36 lines
606 B
Go
36 lines
606 B
Go
package clocks
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
type Clock struct {
|
|
Label string
|
|
Location *time.Location
|
|
}
|
|
|
|
func NewClock(label string, timeLoc *time.Location) Clock {
|
|
clock := Clock{
|
|
Label: label,
|
|
Location: timeLoc,
|
|
}
|
|
|
|
return clock
|
|
}
|
|
|
|
func (clock *Clock) Date(dateFormat string) string {
|
|
return clock.LocalTime().Format(dateFormat)
|
|
}
|
|
|
|
func (clock *Clock) LocalTime() time.Time {
|
|
return clock.ToLocal(time.Now())
|
|
}
|
|
|
|
func (clock *Clock) ToLocal(t time.Time) time.Time {
|
|
return t.In(clock.Location)
|
|
}
|
|
|
|
func (clock *Clock) Time(timeFormat string) string {
|
|
return clock.LocalTime().Format(timeFormat)
|
|
}
|