We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent b9272a9 commit ad6834bCopy full SHA for ad6834b
1 file changed
pkg/utils/bytesize/bytesize.go
@@ -5,6 +5,7 @@ package bytesize
5
6
import (
7
"fmt"
8
+ "math"
9
"regexp"
10
"strconv"
11
@@ -31,6 +32,23 @@ func (b Int64) AsInt() int {
31
32
return int(b)
33
}
34
35
+func (b Int64) HumanString() string {
36
+ switch abs := math.Abs(float64(b)); {
37
+ case abs > PB:
38
+ return fmt.Sprintf("%.2fpb", float64(b)/PB)
39
+ case abs > TB:
40
+ return fmt.Sprintf("%.2ftb", float64(b)/TB)
41
+ case abs > GB:
42
+ return fmt.Sprintf("%.2fgb", float64(b)/GB)
43
+ case abs > MB:
44
+ return fmt.Sprintf("%.2fmb", float64(b)/MB)
45
+ case abs > KB:
46
+ return fmt.Sprintf("%.2fkb", float64(b)/KB)
47
+ default:
48
+ return fmt.Sprintf("%d", b.Int64())
49
+ }
50
+}
51
+
52
func (b Int64) MarshalText() ([]byte, error) {
53
if b == 0 {
54
return []byte("0"), nil
0 commit comments