1 package request_strategy
8 type PeerNextRequestState struct {
10 Requests map[Request]struct{}
13 type PeerPointer = unsafe.Pointer
16 HasPiece func(pieceIndex) bool
17 MaxRequests func() int
18 HasExistingRequest func(Request) bool
20 PieceAllowedFast func(pieceIndex) bool
26 // TODO: This might be used in more places I think.
27 func (p *Peer) canRequestPiece(i pieceIndex) bool {
28 return p.HasPiece(i) && (!p.Choking || p.PieceAllowedFast(i))