mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2024-12-11 09:30:59 +01:00
752c38b0d5
Bumps [github.com/minio/minio-go/v7](https://github.com/minio/minio-go) from 7.0.48 to 7.0.49. - [Release notes](https://github.com/minio/minio-go/releases) - [Commits](https://github.com/minio/minio-go/compare/v7.0.48...v7.0.49) --- updated-dependencies: - dependency-name: github.com/minio/minio-go/v7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
50 lines
986 B
Go
50 lines
986 B
Go
package humanize
|
|
|
|
import (
|
|
"strconv"
|
|
"strings"
|
|
)
|
|
|
|
func stripTrailingZeros(s string) string {
|
|
if !strings.ContainsRune(s, '.') {
|
|
return s
|
|
}
|
|
offset := len(s) - 1
|
|
for offset > 0 {
|
|
if s[offset] == '.' {
|
|
offset--
|
|
break
|
|
}
|
|
if s[offset] != '0' {
|
|
break
|
|
}
|
|
offset--
|
|
}
|
|
return s[:offset+1]
|
|
}
|
|
|
|
func stripTrailingDigits(s string, digits int) string {
|
|
if i := strings.Index(s, "."); i >= 0 {
|
|
if digits <= 0 {
|
|
return s[:i]
|
|
}
|
|
i++
|
|
if i+digits >= len(s) {
|
|
return s
|
|
}
|
|
return s[:i+digits]
|
|
}
|
|
return s
|
|
}
|
|
|
|
// Ftoa converts a float to a string with no trailing zeros.
|
|
func Ftoa(num float64) string {
|
|
return stripTrailingZeros(strconv.FormatFloat(num, 'f', 6, 64))
|
|
}
|
|
|
|
// FtoaWithDigits converts a float to a string but limits the resulting string
|
|
// to the given number of decimal places, and no trailing zeros.
|
|
func FtoaWithDigits(num float64, digits int) string {
|
|
return stripTrailingZeros(stripTrailingDigits(strconv.FormatFloat(num, 'f', 6, 64), digits))
|
|
}
|