diff --git a/tools/time_tools.go b/tools/time_tools.go new file mode 100644 index 00000000..6d8afb2c --- /dev/null +++ b/tools/time_tools.go @@ -0,0 +1,13 @@ +package tools + +import "time" + +// TimeAtOrIn returns either "at", or the "in" duration added to the current +// time. TimeAtOrIn prefers to add a duration rather than return the "at" +// parameter. +func TimeAtOrIn(at time.Time, in time.Duration) time.Time { + if in == 0 { + return at + } + return time.Now().Add(in) +}