internal/utils/duration.go   A
last analyzed

Size/Duplication

Total Lines 56
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
cc 11
eloc 31
dl 0
loc 56
rs 10
c 0
b 0
f 0

11 Methods

Rating   Name   Duplication   Size   Complexity  
A utils.SubMinutes 0 2 1
A utils.SubDays 0 2 1
A utils.AddTime 0 2 1
A utils.SubHours 0 2 1
A utils.AddMinutes 0 2 1
A utils.SubWeeks 0 2 1
A utils.SubSeconds 0 2 1
A utils.SubTime 0 2 1
A utils.SubYears 0 2 1
A utils.AddHours 0 2 1
A utils.SubMonths 0 2 1
1
package utils
2
3
import "time"
4
5
const (
6
	second time.Duration = time.Second
7
	minute time.Duration = time.Minute
8
	hour   time.Duration = time.Hour
9
	day    time.Duration = hour * 24
10
	week   time.Duration = day * 7
11
	month  time.Duration = day * 30
12
	year   time.Duration = day * 365
13
)
14
15
func SubTime(duration time.Duration) time.Time {
16
	return time.Now().Add(-duration)
17
}
18
19
func AddTime(duration time.Duration) time.Time {
20
	return time.Now().Add(duration)
21
}
22
23
func SubSeconds(duration time.Duration) time.Time {
24
	return SubTime(second * duration)
25
}
26
27
func SubMinutes(duration time.Duration) time.Time {
28
	return SubTime(minute * duration)
29
}
30
31
func AddMinutes(duration time.Duration) time.Time {
32
	return AddTime(minute * duration)
33
}
34
35
func SubHours(duration time.Duration) time.Time {
36
	return SubTime(hour * duration)
37
}
38
39
func AddHours(duration time.Duration) time.Time {
40
	return AddTime(hour * duration)
41
}
42
43
func SubDays(duration time.Duration) time.Time {
44
	return SubTime(day * duration)
45
}
46
47
func SubWeeks(duration time.Duration) time.Time {
48
	return SubTime(week * duration)
49
}
50
51
func SubMonths(duration time.Duration) time.Time {
52
	return SubTime(month * duration)
53
}
54
55
func SubYears(duration time.Duration) time.Time {
56
	return SubTime(year * duration)
57
}
58