make one you can send a 'nil' to it
This commit is contained in:
parent
2b1b847143
commit
d564d4f2d7
23
time.go
23
time.go
|
@ -51,6 +51,14 @@ func GetDurationStamp(t time.Time) string {
|
||||||
return FormatDuration(duration)
|
return FormatDuration(duration)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// allows nil
|
||||||
|
func HumanDuration(d *time.Duration) string {
|
||||||
|
if d == nil {
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
return FormatDuration(*d)
|
||||||
|
}
|
||||||
|
|
||||||
func FormatDuration(d time.Duration) string {
|
func FormatDuration(d time.Duration) string {
|
||||||
result := ""
|
result := ""
|
||||||
|
|
||||||
|
@ -94,6 +102,19 @@ func FormatDuration(d time.Duration) string {
|
||||||
if ms > 100 {
|
if ms > 100 {
|
||||||
// todo: print .3s, etc ?
|
// todo: print .3s, etc ?
|
||||||
}
|
}
|
||||||
result += fmt.Sprintf("%dms", ms)
|
if ms > 0 {
|
||||||
|
result += fmt.Sprintf("%dms", ms)
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
|
// report in milliseconds
|
||||||
|
mc := int(d.Microseconds())
|
||||||
|
if mc > 0 {
|
||||||
|
result += fmt.Sprintf("%dmc", mc)
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
|
ns := int(d.Nanoseconds())
|
||||||
|
result += fmt.Sprintf("%dns", ns)
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue