diff --git a/utils/time.go b/utils/time.go new file mode 100644 index 0000000..222e4cd --- /dev/null +++ b/utils/time.go @@ -0,0 +1,31 @@ +package utils + +import "time" + +func MinDuration(durations ...time.Duration) time.Duration { + min := durations[0] + for _, d := range durations { + if d < min { + min = d + } + } + return min +} + +func MaxDuration(durations ...time.Duration) time.Duration { + max := durations[0] + for _, d := range durations { + if d > max { + max = d + } + } + return max +} + +func AvgDuration(durations ...time.Duration) time.Duration { + total := time.Duration(0) + for _, d := range durations { + total += d + } + return total / time.Duration(len(durations)) +} \ No newline at end of file