aboutsummaryrefslogtreecommitdiff
path: root/meta/piece.go
diff options
context:
space:
mode:
Diffstat (limited to 'meta/piece.go')
-rw-r--r--meta/piece.go11
1 files changed, 9 insertions, 2 deletions
diff --git a/meta/piece.go b/meta/piece.go
index 354db9a..247f848 100644
--- a/meta/piece.go
+++ b/meta/piece.go
@@ -2,6 +2,7 @@ package meta
import (
"crypto/sha1"
+ "fmt"
"dim13.org/btget/bitfield"
)
@@ -22,14 +23,20 @@ func (p *Piece) Check(b []byte) bool {
return p.Ok
}
-func (p Pieces) Good() float64 {
+type Percent float64
+
+func (p Percent) String() string {
+ return fmt.Sprintf("%6.2f%%", p)
+}
+
+func (p Pieces) Good() Percent {
var good int
for _, v := range p {
if v.Ok {
good++
}
}
- return float64(good) * 100.0 / float64(len(p))
+ return Percent(good) * 100.0 / Percent(len(p))
}
func (p Pieces) BitField() bitfield.BitField {