add Len() and ContainsPacketNumber() to NackRange

This commit is contained in:
Marten Seemann
2016-04-27 16:04:50 +07:00
parent a4debcac71
commit 2c95141ee1
4 changed files with 65 additions and 10 deletions

22
frames/nack_range.go Normal file
View File

@@ -0,0 +1,22 @@
package frames
import "github.com/lucas-clemente/quic-go/protocol"
// NackRange is a NACK range
type NackRange struct {
FirstPacketNumber protocol.PacketNumber
LastPacketNumber protocol.PacketNumber
}
// Len gets the lengths of a NackRange
func (n *NackRange) Len() uint64 {
return uint64(n.LastPacketNumber) - uint64(n.FirstPacketNumber)
}
// IsInRange checks if a packetNumber is contained in a NACK range
func (n *NackRange) ContainsPacketNumber(packetNumber protocol.PacketNumber) bool {
if packetNumber >= n.FirstPacketNumber && packetNumber <= n.LastPacketNumber {
return true
}
return false
}