]> Sergey Matveev's repositories - btrtrc.git/blobdiff - request-strategy/piece.go
Drop support for go 1.20
[btrtrc.git] / request-strategy / piece.go
index 508ed8294fed2743b2d0f22727ce11c15ca5fa30..b858dfff45f502e0bacc8df44c21f1477d7a52f6 100644 (file)
@@ -1,22 +1,12 @@
-package request_strategy
+package requestStrategy
 
-import (
-       "github.com/anacrolix/torrent/types"
-)
+type ChunksIterFunc func(func(ChunkIndex))
 
-type Piece struct {
-       Request           bool
-       Priority          piecePriority
-       Partial           bool
-       Availability      int64
-       Length            int64
-       NumPendingChunks  int
-       IterPendingChunks func(func(types.ChunkSpec))
+type ChunksIter interface {
+       Iter(func(ci ChunkIndex))
 }
 
-func (p *Piece) iterPendingChunksWrapper(f func(ChunkSpec)) {
-       i := p.IterPendingChunks
-       if i != nil {
-               i(f)
-       }
+type Piece interface {
+       Request() bool
+       NumPendingChunks() int
 }