summaryrefslogtreecommitdiffstats
path: root/dependencies/pkg/mod/github.com/vbauerster/mpb/v6@v6.0.4/internal/percentage.go
blob: a8ef8be1250ed75b8d7f9fdbd9507878d8c52463 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package internal

import "math"

// Percentage is a helper function, to calculate percentage.
func Percentage(total, current int64, width int) float64 {
	if total <= 0 {
		return 0
	}
	if current >= total {
		return float64(width)
	}
	return float64(int64(width)*current) / float64(total)
}

// PercentageRound same as Percentage but with math.Round.
func PercentageRound(total, current int64, width int) float64 {
	return math.Round(Percentage(total, current, width))
}